
@Title(value="File based double distance for database objects.") @Description(value="Loads double distance values from an external text file.") public class FileBasedDoubleDistanceFunction extends AbstractDBIDDistanceFunction<DoubleDistance>
NumberDistanceParser for the default input format.| Modifier and Type | Class and Description | 
|---|---|
| static class  | FileBasedDoubleDistanceFunction.ParameterizerParameterization class. | 
| Modifier and Type | Field and Description | 
|---|---|
| private Map<DBIDPair,DoubleDistance> | cacheThe distance cache | 
| static OptionID | MATRIX_IDParameter that specifies the name of the distance matrix file. | 
| static OptionID | PARSER_IDOptional parameter to specify the parsers to provide a database, must
 extend  DistanceParser. | 
| Constructor and Description | 
|---|
| FileBasedDoubleDistanceFunction(DistanceParser<DoubleDistance> parser,
                               File matrixfile)Constructor. | 
| Modifier and Type | Method and Description | 
|---|---|
| DoubleDistance | distance(DBIDRef id1,
        DBIDRef id2)Returns the distance between the two objects specified by their objects
 ids. | 
| boolean | equals(Object obj) | 
| DoubleDistance | getDistanceFactory()Method to get the distance functions factory. | 
| private void | loadCache(DistanceParser<DoubleDistance> parser,
         File matrixfile) | 
getInputTypeRestriction, instantiate, isMetric, isSymmetricpublic static final OptionID MATRIX_ID
 Key: -distance.matrix
 
public static final OptionID PARSER_ID
DistanceParser. If this parameter is not set,
 NumberDistanceParser is used as parser for all input files.
 
 Key: -distance.parser
 
private Map<DBIDPair,DoubleDistance> cache
public FileBasedDoubleDistanceFunction(DistanceParser<DoubleDistance> parser, File matrixfile)
parser - Parsermatrixfile - input filepublic DoubleDistance distance(DBIDRef id1, DBIDRef id2)
distance in interface DBIDDistanceFunction<DoubleDistance>distance in class AbstractDBIDDistanceFunction<DoubleDistance>id1 - first object idid2 - second object idprivate void loadCache(DistanceParser<DoubleDistance> parser, File matrixfile) throws IOException
IOExceptionpublic DoubleDistance getDistanceFactory()
DistanceFunctiongetDistanceFactory in interface DistanceFunction<DBID,DoubleDistance>getDistanceFactory in class AbstractDBIDDistanceFunction<DoubleDistance>