summaryrefslogtreecommitdiff
path: root/src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java')
-rw-r--r--src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java b/src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java
index cffd9e2a..4bf2b7af 100644
--- a/src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java
+++ b/src/de/lmu/ifi/dbs/elki/distance/distancefunction/adapter/LnSimilarityAdapter.java
@@ -4,7 +4,7 @@ package de.lmu.ifi.dbs.elki.distance.distancefunction.adapter;
This file is part of ELKI:
Environment for Developing KDD-Applications Supported by Index-Structures
- Copyright (C) 2013
+ Copyright (C) 2014
Ludwig-Maximilians-Universität München
Lehr- und Forschungseinheit für Datenbanksysteme
ELKI Development Team
@@ -27,8 +27,6 @@ import de.lmu.ifi.dbs.elki.database.query.distance.DistanceQuery;
import de.lmu.ifi.dbs.elki.database.query.similarity.SimilarityQuery;
import de.lmu.ifi.dbs.elki.database.relation.Relation;
import de.lmu.ifi.dbs.elki.distance.distancefunction.DistanceFunction;
-import de.lmu.ifi.dbs.elki.distance.distancevalue.DoubleDistance;
-import de.lmu.ifi.dbs.elki.distance.distancevalue.NumberDistance;
import de.lmu.ifi.dbs.elki.distance.similarityfunction.NormalizedSimilarityFunction;
/**
@@ -52,8 +50,8 @@ public class LnSimilarityAdapter<O> extends AbstractSimilarityAdapter<O> {
}
@Override
- public <T extends O> DistanceQuery<T, DoubleDistance> instantiate(Relation<T> database) {
- SimilarityQuery<T, ? extends NumberDistance<?, ?>> similarityQuery = similarityFunction.instantiate(database);
+ public <T extends O> DistanceQuery<T> instantiate(Relation<T> database) {
+ SimilarityQuery<T> similarityQuery = similarityFunction.instantiate(database);
return new Instance<>(database, this, similarityQuery);
}
@@ -72,7 +70,7 @@ public class LnSimilarityAdapter<O> extends AbstractSimilarityAdapter<O> {
* @param parent Parent distance
* @param similarityQuery similarity Query to use
*/
- public Instance(Relation<O> database, DistanceFunction<? super O, DoubleDistance> parent, SimilarityQuery<O, ? extends NumberDistance<?, ?>> similarityQuery) {
+ public Instance(Relation<O> database, DistanceFunction<? super O> parent, SimilarityQuery<O> similarityQuery) {
super(database, parent, similarityQuery);
}
@@ -89,10 +87,15 @@ public class LnSimilarityAdapter<O> extends AbstractSimilarityAdapter<O> {
*
* @apiviz.exclude
*/
- public static class Parameterizer<O> extends AbstractSimilarityAdapter.Parameterizer<O> {
+ public static class Parameterizer<O> extends AbstractSimilarityAdapter.Parameterizer<O, NormalizedSimilarityFunction<? super O>> {
@Override
protected LnSimilarityAdapter<O> makeInstance() {
return new LnSimilarityAdapter<>(similarityFunction);
}
+
+ @Override
+ protected Class<? extends NormalizedSimilarityFunction<? super O>> getSimilarityRestriction() {
+ return NORMALIZED_SIMILARITY;
+ }
}
} \ No newline at end of file