29 #ifndef CDPL_PHARM_SPATIALFEATUREMAPPING_HPP
30 #define CDPL_PHARM_SPATIALFEATUREMAPPING_HPP
33 #include <unordered_map>
36 #include <boost/functional/hash.hpp>
49 class FeatureContainer;
123 typedef std::pair<const Feature*, const Feature*> FeaturePair;
124 typedef std::unordered_map<FeaturePair, double, boost::hash<FeaturePair> > FeaturePairToScoreMap;
129 FeaturePairToScoreMap posMatchScores;
130 FeaturePairToScoreMap geomMatchScores;
Definition of the type CDPL::Pharm::FeatureMapping.
Definition of matrix data types.
Definition of the preprocessor macro CDPL_PHARM_API.
#define CDPL_PHARM_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
FeatureContainer.
Definition: FeatureContainer.hpp:53
A data type for the storage and lookup of arbitrary feature to feature mappings.
Definition: FeatureMapping.hpp:54
Feature.
Definition: Feature.hpp:48
SpatialFeatureMapping.
Definition: SpatialFeatureMapping.hpp:55
void perceive(const FeatureContainer &ref_ftrs, const FeatureContainer &aligned_ftrs, const Math::Matrix4D &xform)
std::function< bool(const Feature &, const Feature &)> TypeMatchFunction
A generic wrapper class used to store a user-defined feature type match function.
Definition: SpatialFeatureMapping.hpp:61
void setPositionMatchFunction(const PositionMatchFunction &func)
Specifies a function for checking the proximity of mapped feature positions.
double getGeometryMatchScore(const Feature &ref_ftr, const Feature &aligned_ftr) const
double getPositionMatchScore(const Feature &ref_ftr, const Feature &aligned_ftr) const
std::function< double(const Feature &, const Feature &, const Math::Matrix4D &)> PositionMatchFunction
A generic wrapper class used to store a user-defined feature position match function.
Definition: SpatialFeatureMapping.hpp:66
const GeometryMatchFunction & getGeometryMatchFunction() const
Returns the function that was registered for checking the match of mapped feature geometries.
const PositionMatchFunction & getPositionMatchFunction() const
Returns the function that was registered for checking the proximity of mapped feature positions.
std::function< double(const Feature &, const Feature &, const Math::Matrix4D &)> GeometryMatchFunction
A generic wrapper class used to store a user-defined feature geometry match function.
Definition: SpatialFeatureMapping.hpp:71
SpatialFeatureMapping(bool query_mode=false)
Constructs a SpatialFeatureMapping instance.
void setGeometryMatchFunction(const GeometryMatchFunction &func)
Specifies a function for checking the match of mapped feature geometries.
void setTypeMatchFunction(const TypeMatchFunction &func)
Specifies a function for testing the type compatibility of features.
const TypeMatchFunction & getTypeMatchFunction() const
Returns the function that was registered for testing the type compatibility of the features.
The namespace of the Chemical Data Processing Library.