Class ParallelGeneralizedDBSCAN.Instance<T>

  • All Implemented Interfaces:
    elki.parallel.processor.Processor
    Enclosing class:
    ParallelGeneralizedDBSCAN

    public static class ParallelGeneralizedDBSCAN.Instance<T>
    extends java.lang.Object
    implements elki.parallel.processor.Processor
    Instance for a particular data set.
    Author:
    Erich Schubert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private class  ParallelGeneralizedDBSCAN.Instance.Mapper
      Instance to process part of the data set, for a single iteration.
      • Nested classes/interfaces inherited from interface elki.parallel.processor.Processor

        elki.parallel.processor.Processor.Instance
    • Constructor Summary

      Constructors 
      Constructor Description
      Instance​(elki.database.Database database, NeighborPredicate<T> npreds, CorePredicate<? super T> corepred, boolean coremodel)
      Full Constructor
    • Field Detail

      • coremodel

        protected boolean coremodel
        Track which objects are "core" objects.
      • clusterids

        private elki.database.datastore.WritableDataStore<Assignment> clusterids
        Cluster assignment storage.
      • cores

        private Core[] cores
        Core objects (shared)
      • borders

        private Border[] borders
        Border objects (shared)
      • nextclus

        private int nextclus
        Next cluster number assigned.
      • database

        private elki.database.Database database
        Database for cloning neighbor predicates.
      • progress

        private elki.logging.progress.FiniteProgress progress
        Progress logger.
    • Constructor Detail

      • Instance

        public Instance​(elki.database.Database database,
                        NeighborPredicate<T> npreds,
                        CorePredicate<? super T> corepred,
                        boolean coremodel)
        Full Constructor
        Parameters:
        database - Database to process
        npreds - Neighborhood predicate
        corepred - Core object predicate
        coremodel - Keep track of core points.
    • Method Detail

      • run

        public Clustering<Model> run()
        Run the parallel GDBSCAN algorithm.
        Returns:
        Clustering result
      • processNeighbors

        protected void processNeighbors​(elki.database.ids.DBIDRef id,
                                        T neighbors)
        Synchronize function to process the neighbors.
        Parameters:
        id - Current point
        neighbors - Neighbors
      • cleanup

        public void cleanup​(elki.parallel.processor.Processor.Instance inst)
        Specified by:
        cleanup in interface elki.parallel.processor.Processor