MetricKnn API
Fast Similarity Search using the Metric Space Approach
mknn_distance_eval.hpp
1 /*
2  * Copyright (C) 2012-2015, Juan Manuel Barrios <juanmanuel@barrios.cl>
3  * All rights reserved.
4  *
5  * This file is part of MetricKnn.
6  * MetricKnn is made available under the terms of the BSD 2-Clause License.
7  */
8 
9 #ifndef MKNN_DISTANCE_EVAL_HPP_
10 #define MKNN_DISTANCE_EVAL_HPP_
11 
12 #include "../metricknn_cpp.hpp"
13 
14 namespace mknn {
15 
19 class DistanceEval {
20 public:
30  double eval(void *object_left, void *object_right);
31 
46  double evalTh(void *object_left, void *object_right,
47  double current_threshold);
48 
54 
60 
66 
74  DistanceEval();
78  virtual ~DistanceEval();
82  DistanceEval(const DistanceEval &other);
86  DistanceEval &operator=(const DistanceEval &other);
87 
88 protected:
92  class Impl;
96  std::unique_ptr<Impl> pimpl;
97 
98  friend class Distance;
99 };
100 
101 }
102 
103 #endif
virtual ~DistanceEval()
Default destructor.
Domain & getDomainLeft()
returns the domain declared for the object at the left.
DistanceEval()
Default constructor.
double evalTh(void *object_left, void *object_right, double current_threshold)
Evaluates the distance between object1 and object2.
This class computes the distance between two objects from a given Domain.
Definition: mknn_distance_eval.hpp:19
Domain & getDomainRight()
returns the domain declared for the object at the right.
std::unique_ptr< Impl > pimpl
opaque object
Definition: mknn_distance_eval.hpp:92
Definition: mevaluation_answers.hpp:18
Distance & getDistance()
returns the distance declared for the object.
DistanceEval & operator=(const DistanceEval &other)
Assignment operator.
The Distance is the object with the definition of the method for comparing objects.
Definition: mknn_distance.hpp:59
double eval(void *object_left, void *object_right)
Evaluates the distance between object1 and object2.
A domain represents the type of object that are contained in a dataset.
Definition: mknn_domain.hpp:33
Powered by Download MetricKnn