11 #ifndef _RD_QUERYBOND_H 12 #define _RD_QUERYBOND_H 39 :
Bond(other), dp_query(other.dp_query->copy()){};
44 virtual Bond *copy()
const;
54 bool Match(
Bond const *what)
const;
57 bool QueryMatch(
QueryBond const *what)
const;
60 bool hasQuery()
const {
return dp_query != 0; };
63 QUERYBOND_QUERY *
getQuery()
const {
return dp_query; };
86 void expandQuery(QUERYBOND_QUERY *what,
88 bool maintainOrder =
true);
98 for (
unsigned int i = 0; i < depth; ++i) res +=
" ";
102 res +=
qhelper((*ci).get(), depth + 1);
110 std::string res =
"";
virtual std::string getFullDescription() const
returns a fuller text description
std::string qhelper(Bond::QUERYBOND_QUERY *q, unsigned int depth)
QueryBond(const QueryBond &other)
virtual bool hasQuery() const
std::string qhelper(Atom::QUERYATOM_QUERY *q, unsigned int depth)
virtual QUERYBOND_QUERY * getQuery() const
NOT CALLABLE.
QUERYBOND_QUERY * getQuery() const
returns our current query
CHILD_VECT_CI endChildren() const
returns an iterator for the end of our child vector
std::string describeQuery(const Atom *atom)
QUERYBOND_QUERY * dp_query
#define RDKIT_GRAPHMOL_EXPORT
class for representing a bond
CHILD_VECT_CI beginChildren() const
returns an iterator for the beginning of our child vector
BondDir
the bond's direction (for chirality)
CHILD_VECT::const_iterator CHILD_VECT_CI
Queries::Query< int, Bond const *, true > QUERYBOND_QUERY
#define PRECONDITION(expr, mess)
RDKIT_GRAPHMOL_EXPORT BOND_EQUALS_QUERY * makeBondOrderEqualsQuery(Bond::BondType what)
returns a Query for matching bond orders
Pulls in all the query types.
QueryBond(const Bond &other)
initialize from a bond
Class for storing Bond queries.
Base class for all queries.
void setQuery(QUERYBOND_QUERY *what)
replaces our current query with the value passed in