![]() |
Chemical Data Processing Library C++ API - Version 1.2.3
|
SpatialEntityAlignment. More...
#include <SpatialEntityAlignment.hpp>
Inheritance diagram for CDPL::Chem::SpatialEntityAlignment< T >:Public Types | |
| typedef T | EntityType |
| The actual entity type. More... | |
| typedef TopologicalAlignment::ConstEntityIterator | ConstEntityIterator |
| A constant iterator over the stored entities. More... | |
| typedef std::function< bool(const Util::STPairArray &)> | TopologicalAlignmentConstraintFunction |
| A generic wrapper class used to store a user-defined predicate to restrict allowed topological entity alignments. More... | |
| typedef std::function< const Math::Vector3D &(const EntityType &)> | Entity3DCoordinatesFunction |
| A generic wrapper class used to store a user-defined entity 3D-coordinates function. More... | |
| typedef std::function< double(const EntityType &)> | EntityWeightFunction |
| A generic wrapper class used to store a user-defined entity alignment weight function. More... | |
| typedef TopologicalAlignment::EntityMatchFunction | EntityMatchFunction |
| A generic wrapper class used to store a user-defined topological entity match constraint function. More... | |
| typedef TopologicalAlignment::EntityPairMatchFunction | EntityPairMatchFunction |
| A generic wrapper class used to store a user-defined entity-pair match constraint function. More... | |
Public Member Functions | |
| SpatialEntityAlignment () | |
Constructs the SpatialEntityAlignment instance. More... | |
| virtual | ~SpatialEntityAlignment () |
| Virtual destructor. More... | |
| void | setMinTopologicalMappingSize (std::size_t min_size) |
| Specifies the minimum number of topologically mapped entities that is required to enable a subsequent spatial alignment. More... | |
| std::size_t | getMinTopologicalMappingSize () |
| Returns the minimum number of topologically mapped entities that is required to enable a subsequent spatial alignment. More... | |
| void | setEntity3DCoordinatesFunction (const Entity3DCoordinatesFunction &func) |
| Specifies a function for the retrieval of entity 3D-coordinates. More... | |
| const Entity3DCoordinatesFunction & | getEntity3DCoordinatesFunction () const |
| Returns the function that was registered for the retrieval of entity 3D-coordinates. More... | |
| void | setEntityWeightFunction (const EntityWeightFunction &func) |
| Specifies a function for the retrieval of entity weights for spatial alignment. More... | |
| const EntityWeightFunction & | getEntityWeightFunction () const |
| Returns the function that was registered for the retrieval of entity weights for spatial alignment. More... | |
| void | setTopAlignmentConstraintFunction (const TopologicalAlignmentConstraintFunction &func) |
| Specifies a function for restricting allowed topological entity alignments. More... | |
| const TopologicalAlignmentConstraintFunction & | getTopAlignmentConstraintFunction () const |
| Returns the function that was registered for restricting allowed topological entity alignments. More... | |
| void | setEntityMatchFunction (const EntityMatchFunction &func) |
| Specifies a function for restricting allowed topological entity mappings in the search for alignment solutions. More... | |
| const EntityMatchFunction & | getEntityMatchFunction () const |
| Returns the function that was registered for restricting allowed topological entity mappings. More... | |
| void | setEntityPairMatchFunction (const EntityPairMatchFunction &func) |
| Specifies a function for checking the compatibility of entity-pairs in the search for alignment solutions. More... | |
| const EntityPairMatchFunction & | getEntityPairMatchFunction () const |
| Returns the function that was registered for checking the compatibility of entity-pairs. More... | |
| void | performExhaustiveSearch (bool exhaustive) |
| bool | exhaustiveSearchPerformed () const |
| void | addEntity (const EntityType &entity, bool first_set) |
| Adds an entity to the specified alignment entity set. More... | |
| void | clearEntities (bool first_set) |
| Removes all entities in the specified alignment entity set. More... | |
| std::size_t | getNumEntities (bool first_set) const |
| Returns the number of entities in the specified alignment entity set. More... | |
| ConstEntityIterator | getEntitiesBegin (bool first_set) const |
| Returns a constant iterator pointing to the beginning of the entities stored in the specified set. More... | |
| ConstEntityIterator | getEntitiesEnd (bool first_set) const |
| Returns a constant iterator pointing to the end of the entities stored in the specified set. More... | |
| const EntityType & | getEntity (std::size_t idx, bool first_set) const |
Returns a non-const reference to the stored entity at index idx in the specified set. More... | |
| bool | nextAlignment () |
| Searches for the next alignment solution. More... | |
| void | reset () |
| const Math::Matrix4D & | getTransform () const |
| Returns the alignment transformation matrix that was calculated in the last successful call to nextAlignment(). More... | |
| const Util::STPairArray & | getTopologicalMapping () const |
| Returns the topological entity mapping resulting from the last successful call to nextAlignment(). More... | |
| typedef T CDPL::Chem::SpatialEntityAlignment< T >::EntityType |
The actual entity type.
| typedef TopologicalAlignment::ConstEntityIterator CDPL::Chem::SpatialEntityAlignment< T >::ConstEntityIterator |
A constant iterator over the stored entities.
| typedef std::function<bool(const Util::STPairArray&)> CDPL::Chem::SpatialEntityAlignment< T >::TopologicalAlignmentConstraintFunction |
A generic wrapper class used to store a user-defined predicate to restrict allowed topological entity alignments.
| typedef std::function<const Math::Vector3D&(const EntityType&)> CDPL::Chem::SpatialEntityAlignment< T >::Entity3DCoordinatesFunction |
A generic wrapper class used to store a user-defined entity 3D-coordinates function.
| typedef std::function<double(const EntityType&)> CDPL::Chem::SpatialEntityAlignment< T >::EntityWeightFunction |
A generic wrapper class used to store a user-defined entity alignment weight function.
| typedef TopologicalAlignment::EntityMatchFunction CDPL::Chem::SpatialEntityAlignment< T >::EntityMatchFunction |
A generic wrapper class used to store a user-defined topological entity match constraint function.
| typedef TopologicalAlignment::EntityPairMatchFunction CDPL::Chem::SpatialEntityAlignment< T >::EntityPairMatchFunction |
A generic wrapper class used to store a user-defined entity-pair match constraint function.
| CDPL::Chem::SpatialEntityAlignment< T >::SpatialEntityAlignment |
Constructs the SpatialEntityAlignment instance.
|
inlinevirtual |
Virtual destructor.
| void CDPL::Chem::SpatialEntityAlignment< T >::setMinTopologicalMappingSize | ( | std::size_t | min_size | ) |
Specifies the minimum number of topologically mapped entities that is required to enable a subsequent spatial alignment.
| min_size | The minimum required number of topologically mapped entities. |
| std::size_t CDPL::Chem::SpatialEntityAlignment< T >::getMinTopologicalMappingSize |
Returns the minimum number of topologically mapped entities that is required to enable a subsequent spatial alignment.
| void CDPL::Chem::SpatialEntityAlignment< T >::setEntity3DCoordinatesFunction | ( | const Entity3DCoordinatesFunction & | func | ) |
Specifies a function for the retrieval of entity 3D-coordinates.
| func | The entity 3D-coordinates function. |
| const CDPL::Chem::SpatialEntityAlignment< T >::Entity3DCoordinatesFunction & CDPL::Chem::SpatialEntityAlignment< T >::getEntity3DCoordinatesFunction |
Returns the function that was registered for the retrieval of entity 3D-coordinates.
| void CDPL::Chem::SpatialEntityAlignment< T >::setEntityWeightFunction | ( | const EntityWeightFunction & | func | ) |
Specifies a function for the retrieval of entity weights for spatial alignment.
| func | The entity weight function. |
| const CDPL::Chem::SpatialEntityAlignment< T >::EntityWeightFunction & CDPL::Chem::SpatialEntityAlignment< T >::getEntityWeightFunction |
Returns the function that was registered for the retrieval of entity weights for spatial alignment.
| void CDPL::Chem::SpatialEntityAlignment< T >::setTopAlignmentConstraintFunction | ( | const TopologicalAlignmentConstraintFunction & | func | ) |
Specifies a function for restricting allowed topological entity alignments.
| func | The constraint check function. |
| const CDPL::Chem::SpatialEntityAlignment< T >::TopologicalAlignmentConstraintFunction & CDPL::Chem::SpatialEntityAlignment< T >::getTopAlignmentConstraintFunction |
Returns the function that was registered for restricting allowed topological entity alignments.
| void CDPL::Chem::SpatialEntityAlignment< T >::setEntityMatchFunction | ( | const EntityMatchFunction & | func | ) |
Specifies a function for restricting allowed topological entity mappings in the search for alignment solutions.
| func | The constraint check function. |
| const CDPL::Chem::SpatialEntityAlignment< T >::EntityMatchFunction & CDPL::Chem::SpatialEntityAlignment< T >::getEntityMatchFunction |
Returns the function that was registered for restricting allowed topological entity mappings.
| void CDPL::Chem::SpatialEntityAlignment< T >::setEntityPairMatchFunction | ( | const EntityPairMatchFunction & | func | ) |
Specifies a function for checking the compatibility of entity-pairs in the search for alignment solutions.
| func | The constraint check function. |
| const CDPL::Chem::SpatialEntityAlignment< T >::EntityPairMatchFunction & CDPL::Chem::SpatialEntityAlignment< T >::getEntityPairMatchFunction |
Returns the function that was registered for checking the compatibility of entity-pairs.
| void CDPL::Chem::SpatialEntityAlignment< T >::performExhaustiveSearch | ( | bool | exhaustive | ) |
| bool CDPL::Chem::SpatialEntityAlignment< T >::exhaustiveSearchPerformed |
| void CDPL::Chem::SpatialEntityAlignment< T >::addEntity | ( | const EntityType & | entity, |
| bool | first_set | ||
| ) |
Adds an entity to the specified alignment entity set.
| entity | The entity object to add. |
| first_set | If true, the entity is added to the first entity set, if false to the second one. |
| void CDPL::Chem::SpatialEntityAlignment< T >::clearEntities | ( | bool | first_set | ) |
Removes all entities in the specified alignment entity set.
| first_set | If true, the first entity set is cleared, if false the second one. |
| std::size_t CDPL::Chem::SpatialEntityAlignment< T >::getNumEntities | ( | bool | first_set | ) | const |
Returns the number of entities in the specified alignment entity set.
| first_set | If true, the size of first entity set is returned, if false the size of the second one. |
| CDPL::Chem::SpatialEntityAlignment< T >::ConstEntityIterator CDPL::Chem::SpatialEntityAlignment< T >::getEntitiesBegin | ( | bool | first_set | ) | const |
Returns a constant iterator pointing to the beginning of the entities stored in the specified set.
| first_set | If true, an iterator for first entity set is returned, if false for the second one. |
| CDPL::Chem::SpatialEntityAlignment< T >::ConstEntityIterator CDPL::Chem::SpatialEntityAlignment< T >::getEntitiesEnd | ( | bool | first_set | ) | const |
Returns a constant iterator pointing to the end of the entities stored in the specified set.
| first_set | If true, an iterator for first entity set is returned, if false for the second one. |
| const CDPL::Chem::SpatialEntityAlignment< T >::EntityType & CDPL::Chem::SpatialEntityAlignment< T >::getEntity | ( | std::size_t | idx, |
| bool | first_set | ||
| ) | const |
Returns a non-const reference to the stored entity at index idx in the specified set.
| idx | The zero-based index of the entity instance to return. |
| first_set | true, if the entity to return is stored in the first set. false, if stored in the second set. |
const reference to the entity stored at index idx in the specified set. | Base::IndexError | if the number of entities in the specified set is zero or idx is not in the range [0, getNumEntities() - 1]. |
| bool CDPL::Chem::SpatialEntityAlignment< T >::nextAlignment |
Searches for the next alignment solution.
true if a new alignment solution could be found, and false otherwise. | void CDPL::Chem::SpatialEntityAlignment< T >::reset |
| const CDPL::Math::Matrix4D & CDPL::Chem::SpatialEntityAlignment< T >::getTransform |
Returns the alignment transformation matrix that was calculated in the last successful call to nextAlignment().
A transformation of the positions of the entities in the second set aligns them spatially to the topologically mapped entities in the first set.
| const CDPL::Util::STPairArray & CDPL::Chem::SpatialEntityAlignment< T >::getTopologicalMapping |
Returns the topological entity mapping resulting from the last successful call to nextAlignment().