ATLAS Offline Software
|
ObjectMatching is a base class that performs generic matching of objects using the distance functor framework. More...
#include <ObjectMatching.h>
Classes | |
class | DistanceCompare |
Public Member Functions | |
ObjectMatching () | |
virtual | ~ObjectMatching () |
template<typename T , typename U > | |
float | distance (const T *t, const U *u, const DistanceFunctor< T, U > *metric) const |
distance returns the distance between the two supplied objects using metric, if available, or the default metric, if not. More... | |
template<typename T , typename U > | |
float | distance (const T *t, const U *u) const |
template<typename T , typename U > | |
std::vector< const T * > | matchToObjects (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance, const DistanceFunctor< T, U > *metric) const |
matchToObjects returns the objects of type T from the supplied vector that match to matchObject, sorted by distance from the matchObject according to metric. More... | |
template<typename T , typename U > | |
std::vector< const T * > | matchToObjects (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance=0.1) const |
template<typename T , typename U > | |
std::vector< const T * > | matchToObjects (const U *matchObject, const DataVector< T > &targetObjects, float maxDistance, const DistanceFunctor< T, U > *metric) const |
template<typename T , typename U > | |
std::vector< const T * > | matchToObjects (const U *matchObject, const DataVector< T > &targetObjects, float maxDistance=0.1) const |
template<typename T , typename U > | |
bool | anyMatch (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance, const DistanceFunctor< T, U > *metric) const |
template<typename T , typename U > | |
bool | anyMatch (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance) const |
template<typename T , typename U > | |
const T * | matchToObject (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance, const DistanceFunctor< T, U > *metric) const |
matchToObject returns the object of type T from the suppled vector that best matches matchObject according to the distance metric, if available, or if not, according the the default metric. More... | |
template<typename T , typename U > | |
const T * | matchToObject (const U *matchObject, const std::vector< const T * > &targetObjects, float maxDistance=0.1) const |
template<typename T , typename U > | |
const T * | matchToObject (const U *matchObject, const DataVector< T > &targetObjects, float maxDistance, const DistanceFunctor< T, U > *metric) const |
template<typename T , typename U > | |
const T * | matchToObject (const U *matchObject, const DataVector< T > &targetObjects, float maxDistance=0.1) const |
Protected Member Functions | |
template<typename T , typename U > | |
const DistanceFunctor< T, U > * | prepareMetric () const |
ObjectMatching is a base class that performs generic matching of objects using the distance functor framework.
Definition at line 20 of file ObjectMatching.h.
|
inline |
Definition at line 24 of file ObjectMatching.h.
|
inlinevirtual |
Definition at line 25 of file ObjectMatching.h.
bool ObjectMatching::anyMatch | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance | ||
) | const |
bool ObjectMatching::anyMatch | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
float ObjectMatching::distance | ( | const T * | t, |
const U * | u | ||
) | const |
float ObjectMatching::distance | ( | const T * | t, |
const U * | u, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
distance returns the distance between the two supplied objects using metric, if available, or the default metric, if not.
const T* ObjectMatching::matchToObject | ( | const U * | matchObject, |
const DataVector< T > & | targetObjects, | ||
float | maxDistance, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
const T* ObjectMatching::matchToObject | ( | const U * | matchObject, |
const DataVector< T > & | targetObjects, | ||
float | maxDistance = 0.1 |
||
) | const |
const T* ObjectMatching::matchToObject | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
matchToObject returns the object of type T from the suppled vector that best matches matchObject according to the distance metric, if available, or if not, according the the default metric.
const T* ObjectMatching::matchToObject | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance = 0.1 |
||
) | const |
std::vector<const T*> ObjectMatching::matchToObjects | ( | const U * | matchObject, |
const DataVector< T > & | targetObjects, | ||
float | maxDistance, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
std::vector<const T*> ObjectMatching::matchToObjects | ( | const U * | matchObject, |
const DataVector< T > & | targetObjects, | ||
float | maxDistance = 0.1 |
||
) | const |
std::vector<const T*> ObjectMatching::matchToObjects | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance, | ||
const DistanceFunctor< T, U > * | metric | ||
) | const |
matchToObjects returns the objects of type T from the supplied vector that match to matchObject, sorted by distance from the matchObject according to metric.
std::vector<const T*> ObjectMatching::matchToObjects | ( | const U * | matchObject, |
const std::vector< const T * > & | targetObjects, | ||
float | maxDistance = 0.1 |
||
) | const |
|
protected |