![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Chem::MatchExpression that constrains target atoms by their stereo configuration relative to a query atom. More...
#include <AtomConfigurationMatchExpression.hpp>
Inheritance diagram for CDPL::Chem::AtomConfigurationMatchExpression:Public Types | |
| typedef std::shared_ptr< AtomConfigurationMatchExpression > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated AtomConfigurationMatchExpression instances. More... | |
Public Types inherited from CDPL::Chem::MatchExpression< Atom, MolecularGraph > | |
| typedef std::shared_ptr< MatchExpression > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated MatchExpression instances. More... | |
Public Member Functions | |
| AtomConfigurationMatchExpression (const StereoDescriptor &query_stereo_descr, const Atom &query_atom, bool not_match, bool allow_part_maps) | |
Constructs an AtomConfigurationMatchExpression instance for the specified matching mode and stereo configuration constraints. More... | |
| bool | operator() (const Atom &query_atom, const MolecularGraph &query_molgraph, const Atom &target_atom, const MolecularGraph &target_molgraph, const AtomBondMapping &mapping, const Base::Any &aux_data) const |
| Checks whether the stereo configuration of target_atom satisfies (or does not satisfy) the configuration constraints specified in the constructor. More... | |
| bool | requiresAtomBondMapping () const |
Returns true to indicate that the expression requires a query to target atom/bond mapping candidate for its evaluation. More... | |
Public Member Functions inherited from CDPL::Chem::MatchExpression< Atom, MolecularGraph > | |
| virtual | ~MatchExpression () |
| Virtual Destructor. More... | |
| virtual bool | operator() (const Atom &query_obj1, const MolecularGraph &query_obj2, const Atom &target_obj1, const MolecularGraph &target_obj2, const Base::Any &aux_data) const |
| Performs an evaluation of the expression for the given query and target objects. More... | |
| virtual bool | operator() (const Atom &query_obj1, const MolecularGraph &query_obj2, const Atom &target_obj1, const MolecularGraph &target_obj2, const AtomBondMapping &mapping, const Base::Any &aux_data) const |
| Performs an evaluation of the expression for the given query and target objects under consideration of the provided candidate atom/bond mapping. More... | |
Chem::MatchExpression that constrains target atoms by their stereo configuration relative to a query atom.
Used in substructure searches with stereochemistry support: the expression evaluates the target atom's stereo configuration (as defined by its Chem::StereoDescriptor) against the configuration constraint flags derived from the query atom's descriptor. The matching mode (match/not-match) and partial-mapping tolerance are configurable.
| typedef std::shared_ptr<AtomConfigurationMatchExpression> CDPL::Chem::AtomConfigurationMatchExpression::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated AtomConfigurationMatchExpression instances.
| CDPL::Chem::AtomConfigurationMatchExpression::AtomConfigurationMatchExpression | ( | const StereoDescriptor & | query_stereo_descr, |
| const Atom & | query_atom, | ||
| bool | not_match, | ||
| bool | allow_part_maps | ||
| ) |
Constructs an AtomConfigurationMatchExpression instance for the specified matching mode and stereo configuration constraints.
| query_stereo_descr | The descriptor object specifying the query atom's stereo configuration reference atoms and associated configuration constraints on matching target atoms. |
| query_atom | The atom for which this AtomConfigurationMatchExpression instance gets constructed. |
| not_match | Specifies whether the stereo configuration of a target atom actually has to match (true) or not match (false) the query configuration constraints. |
| allow_part_maps | Specifies whether or not a target atom that has an incomplete query to target neighbor atom/bond mapping shall be considered to match the query configuration constraints. This is important for maximum common substructure searches where the provided query to target atom mapping may not be complete. |
| bool CDPL::Chem::AtomConfigurationMatchExpression::operator() | ( | const Atom & | query_atom, |
| const MolecularGraph & | query_molgraph, | ||
| const Atom & | target_atom, | ||
| const MolecularGraph & | target_molgraph, | ||
| const AtomBondMapping & | mapping, | ||
| const Base::Any & | aux_data | ||
| ) | const |
Checks whether the stereo configuration of target_atom satisfies (or does not satisfy) the configuration constraints specified in the constructor.
The specified configuration constraint flags are interpreted in a 'logical OR' manner. That is, the stereo configuration of the checked target atom only has to match (or not match) one of the specified query configurations to satisfy the overall configuration constraints. Note that only the flags defined in namespace Chem::AtomConfiguration are supported - any other flags will be ignored.
| query_atom | The query atom. |
| query_molgraph | The molecular graph containing the query atom (ignored). |
| target_atom | The checked target atom. |
| target_molgraph | The molecular graph containing the target atom (ignored). |
| mapping | The current query to target atom/bond mapping candidate. |
| aux_data | Auxiliary information for expression evaluation (ignored). |
false if the stereo configuration of the target atom matches one of the specified query configurations, and true if not. Otherwise, the method will return true if the target configuration does match one of the specified configurations, and false if all allowed configurations remain unmatched. true - irrespective of matching mode and actual target atom configuration!
|
virtual |
Returns true to indicate that the expression requires a query to target atom/bond mapping candidate for its evaluation.
true. Reimplemented from CDPL::Chem::MatchExpression< Atom, MolecularGraph >.