Class GeneralizedOPTICS.Instance<R>

  • Type Parameters:
    R - the type of results in the cluster order
    All Implemented Interfaces:
    java.util.Comparator<elki.database.ids.DBIDRef>
    Direct Known Subclasses:
    HiCO.Instance, HiSC.Instance
    Enclosing interface:
    GeneralizedOPTICS

    public abstract static class GeneralizedOPTICS.Instance<R>
    extends java.lang.Object
    implements java.util.Comparator<elki.database.ids.DBIDRef>
    Instance for processing a single data set.
    Author:
    Erich Schubert
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected elki.database.ids.ArrayModifiableDBIDs candidates
      Current list of candidates.
      (package private) elki.database.ids.DBIDs ids
      IDs to process.
      protected elki.database.datastore.WritableDBIDDataStore predecessor
      Predecessor storage.
      protected elki.database.ids.ModifiableDBIDs processedIDs
      Holds a set of processed ids.
      (package private) elki.logging.progress.FiniteProgress progress
      Progress for logging.
      protected elki.database.datastore.WritableDoubleDataStore reachability
      Reachability storage.
    • Constructor Summary

      Constructors 
      Constructor Description
      Instance​(elki.database.ids.DBIDs ids)
      Constructor for a single data set.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract R buildResult()
      Build the final result.
      int compare​(elki.database.ids.DBIDRef o1, elki.database.ids.DBIDRef o2)  
      protected abstract void expandDBID​(elki.database.ids.DBIDRef id)
      Add the current DBID to the cluster order, and expand its neighbors if minPts and similar conditions are satisfied.
      protected abstract elki.logging.Logging getLogger()
      Get the class logger.
      protected abstract void initialDBID​(elki.database.ids.DBIDRef id)
      Initialize for a new DBID.
      R run()
      Process the data set.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Field Detail

      • processedIDs

        protected elki.database.ids.ModifiableDBIDs processedIDs
        Holds a set of processed ids.
      • candidates

        protected elki.database.ids.ArrayModifiableDBIDs candidates
        Current list of candidates.
      • predecessor

        protected elki.database.datastore.WritableDBIDDataStore predecessor
        Predecessor storage.
      • reachability

        protected elki.database.datastore.WritableDoubleDataStore reachability
        Reachability storage.
      • ids

        elki.database.ids.DBIDs ids
        IDs to process.
      • progress

        elki.logging.progress.FiniteProgress progress
        Progress for logging.
    • Constructor Detail

      • Instance

        public Instance​(elki.database.ids.DBIDs ids)
        Constructor for a single data set.
        Parameters:
        ids - IDs to process
    • Method Detail

      • compare

        public int compare​(elki.database.ids.DBIDRef o1,
                           elki.database.ids.DBIDRef o2)
        Specified by:
        compare in interface java.util.Comparator<R>
      • run

        public R run()
        Process the data set.
        Returns:
        Cluster order result.
      • initialDBID

        protected abstract void initialDBID​(elki.database.ids.DBIDRef id)
        Initialize for a new DBID.
        Parameters:
        id - Current object ID
      • expandDBID

        protected abstract void expandDBID​(elki.database.ids.DBIDRef id)
        Add the current DBID to the cluster order, and expand its neighbors if minPts and similar conditions are satisfied.
        Parameters:
        id - Current object ID
      • buildResult

        protected abstract R buildResult()
        Build the final result.
        Returns:
        Result
      • getLogger

        protected abstract elki.logging.Logging getLogger()
        Get the class logger.
        Returns:
        Class logger