
D - the type of Distance usedpublic abstract class AbstractDBIDDistanceFunction<D extends Distance<D>> extends Object implements DBIDDistanceFunction<D>
| Modifier | Constructor and Description | 
|---|---|
protected  | 
AbstractDBIDDistanceFunction()
Provides an abstract DistanceFunction. 
 | 
| Modifier and Type | Method and Description | 
|---|---|
abstract D | 
distance(DBIDRef o1,
        DBIDRef o2)
Returns the distance between the two objects specified by their object ids. 
 | 
abstract D | 
getDistanceFactory()
Method to get the distance functions factory. 
 | 
SimpleTypeInformation<DBID> | 
getInputTypeRestriction()
Get the input data type of the function. 
 | 
<O extends DBID>  | 
instantiate(Relation<O> database)
Instantiate with a database to get the actual distance query. 
 | 
boolean | 
isMetric()
Is this distance function metric (in particular, does it satisfy the
 triangle equation?) 
 | 
boolean | 
isSymmetric()
Is this function symmetric? 
 | 
protected AbstractDBIDDistanceFunction()
public abstract D distance(DBIDRef o1, DBIDRef o2)
DBIDDistanceFunctiondistance in interface DBIDDistanceFunction<D extends Distance<D>>o1 - first object ido2 - second object idpublic abstract D getDistanceFactory()
DistanceFunctiongetDistanceFactory in interface DistanceFunction<DBID,D extends Distance<D>>public boolean isSymmetric()
DistanceFunctionisSymmetric in interface DistanceFunction<DBID,D extends Distance<D>>true when symmetricpublic boolean isMetric()
DistanceFunctionpublic SimpleTypeInformation<DBID> getInputTypeRestriction()
DistanceFunctiongetInputTypeRestriction in interface DistanceFunction<DBID,D extends Distance<D>>public final <O extends DBID> DistanceQuery<O,D> instantiate(Relation<O> database)
DistanceFunctioninstantiate in interface DistanceFunction<DBID,D extends Distance<D>>database - The representation to use