Chemical Data Processing Library C++ API - Version 1.2.0
|
BondSubstituentDirectionMatchExpression. More...
#include <BondSubstituentDirectionMatchExpression.hpp>
Public Types | |
typedef std::shared_ptr< BondSubstituentDirectionMatchExpression > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated BondSubstituentDirectionMatchExpression instances. More... | |
Public Types inherited from CDPL::Chem::MatchExpression< Bond, MolecularGraph > | |
typedef std::shared_ptr< MatchExpression > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated MatchExpression instances. More... | |
Public Member Functions | |
bool | operator() (const Bond &query_bond, const MolecularGraph &query_molgraph, const Bond &target_bond, const MolecularGraph &target_molgraph, const AtomBondMapping &mapping, const Base::Any &aux_data) const |
Checks whether the relative directions of the substituent bonds of target_bond match the bond direction constraints specified for the substituent bonds of query_bond. 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< Bond, MolecularGraph > | |
virtual | ~MatchExpression () |
Virtual Destructor. More... | |
virtual bool | operator() (const Bond &query_obj1, const MolecularGraph &query_obj2, const Bond &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 Bond &query_obj1, const MolecularGraph &query_obj2, const Bond &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... | |
BondSubstituentDirectionMatchExpression.
Daylight SMARTS [SMARTS] substructure search patterns specify cis/trans geometry constraints for a double bond by indicating the relative direction of the bonds to its substituent atoms.
typedef std::shared_ptr<BondSubstituentDirectionMatchExpression> CDPL::Chem::BondSubstituentDirectionMatchExpression::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated BondSubstituentDirectionMatchExpression
instances.
bool CDPL::Chem::BondSubstituentDirectionMatchExpression::operator() | ( | const Bond & | query_bond, |
const MolecularGraph & | query_molgraph, | ||
const Bond & | target_bond, | ||
const MolecularGraph & | target_molgraph, | ||
const AtomBondMapping & | mapping, | ||
const Base::Any & | aux_data | ||
) | const |
Checks whether the relative directions of the substituent bonds of target_bond match the bond direction constraints specified for the substituent bonds of query_bond.
The relative directions of the substituent bonds of target_bond are considered to match the direction constraints of the query_bond substituents if each match expression that is associated with a query substituent bond (taken from the property Chem::BondProperty::MATCH_EXPRESSION) evaluates to true
for the respective mapped target substituent bond and its direction. The relative directions of the target substituent bonds are calculated on the fly from the target bond's cis/trans geometry and get passed to the match expressions via the aux_data argument of the function call operator (see Chem::BondDirectionMatchExpression::operator()()). If the exact cis/trans geometry of target_bond was not properly defined (i.e. the geometry is neither Chem::BondGeometry::CIS nor Chem::BondGeometry::TRANS), the direction of its substituent bonds is set to Chem::BondDirection::UNSPECIFIED.
query_bond | The query bond. |
query_molgraph | The molecular graph containing the query bond. |
target_bond | The checked target bond. |
target_molgraph | The molecular graph containing the target bond. |
mapping | The current query to target atom/bond mapping candidate. |
aux_data | Auxiliary information for expression evaluation (ignored). |
true
if all match expressions that are associated with the substituent bonds of query_bond evaluate to true
for the calculated relative bond directions of the mapped target_bond substituents, and false
otherwise. true
.
|
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< Bond, MolecularGraph >.