Class DiskCacheBasedDoubleDistance

  • All Implemented Interfaces:
    elki.distance.DBIDDistance, elki.distance.DBIDRangeDistance, elki.distance.Distance<elki.database.ids.DBID>

    public class DiskCacheBasedDoubleDistance
    extends elki.distance.AbstractDBIDRangeDistance
    Distance function that is based on double distances given by a distance matrix of an external binary matrix file.
    Since:
    0.2
    Author:
    Erich Schubert
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  DiskCacheBasedDoubleDistance.Par
      Parameterization class.
      • Nested classes/interfaces inherited from class elki.distance.AbstractDatabaseDistance

        elki.distance.AbstractDatabaseDistance.Instance<O extends java.lang.Object>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private elki.persistent.OnDiskUpperTriangleMatrix cache
      The distance matrix
      static int DOUBLE_CACHE_MAGIC
      Magic to identify double cache matrices
      private static elki.logging.Logging LOG
      Class logger.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void checkRange​(elki.database.ids.DBIDRange range)  
      double distance​(int i1, int i2)  
      boolean equals​(java.lang.Object obj)  
      • Methods inherited from class elki.distance.AbstractDBIDRangeDistance

        distance, getInputTypeRestriction, instantiate
      • Methods inherited from class java.lang.Object

        clone, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface elki.distance.Distance

        isMetric, isSquared, isSymmetric
    • Field Detail

      • LOG

        private static final elki.logging.Logging LOG
        Class logger.
      • DOUBLE_CACHE_MAGIC

        public static final int DOUBLE_CACHE_MAGIC
        Magic to identify double cache matrices
        See Also:
        Constant Field Values
      • cache

        private elki.persistent.OnDiskUpperTriangleMatrix cache
        The distance matrix
    • Constructor Detail

      • DiskCacheBasedDoubleDistance

        public DiskCacheBasedDoubleDistance​(elki.persistent.OnDiskUpperTriangleMatrix cache)
        Constructor.
        Parameters:
        cache - Distance matrix
      • DiskCacheBasedDoubleDistance

        public DiskCacheBasedDoubleDistance​(java.nio.file.Path matrixfile)
                                     throws java.io.IOException
        Constructor.
        Parameters:
        matrixfile - File name
        Throws:
        java.io.IOException
    • Method Detail

      • distance

        public double distance​(int i1,
                               int i2)
      • checkRange

        public void checkRange​(elki.database.ids.DBIDRange range)
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class java.lang.Object