Package elki.index

Class AbstractRefiningIndex<O>

  • Type Parameters:
    O - Object type
    All Implemented Interfaces:
    elki.index.Index

    public abstract class AbstractRefiningIndex<O>
    extends java.lang.Object
    implements elki.index.Index
    Abstract base class for Filter-refinement indexes. The number of refinements will be counted as individual page accesses.
    Since:
    0.5.0
    Author:
    Erich Schubert
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private elki.logging.statistics.Counter refinements
      Refinement counter.
      protected elki.database.relation.Relation<O> relation
      The representation we are bound to.
    • Constructor Summary

      Constructors 
      Constructor Description
      AbstractRefiningIndex​(elki.database.relation.Relation<O> relation)
      Constructor.
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected void countRefinements​(int i)
      Increment the refinement counter, if in use.
      abstract elki.logging.Logging getLogger()
      Get the class logger.
      void logStatistics()  
      protected O refine​(elki.database.ids.DBID id)
      Refine a given object (and count the refinement!).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface elki.index.Index

        initialize
    • Field Detail

      • relation

        protected final elki.database.relation.Relation<O> relation
        The representation we are bound to.
      • refinements

        private elki.logging.statistics.Counter refinements
        Refinement counter.
    • Constructor Detail

      • AbstractRefiningIndex

        public AbstractRefiningIndex​(elki.database.relation.Relation<O> relation)
        Constructor.
        Parameters:
        relation - Relation indexed
    • Method Detail

      • getLogger

        public abstract elki.logging.Logging getLogger()
        Get the class logger.
        Returns:
        Logger
      • countRefinements

        protected void countRefinements​(int i)
        Increment the refinement counter, if in use.
        Parameters:
        i - Increment.
      • logStatistics

        public void logStatistics()
        Specified by:
        logStatistics in interface elki.index.Index
      • refine

        protected O refine​(elki.database.ids.DBID id)
        Refine a given object (and count the refinement!).
        Parameters:
        id - Object id
        Returns:
        refined object