17 #ifndef __RD_ATOM_ITERATORS_H__ 18 #define __RD_ATOM_ITERATORS_H__ 21 #pragma warning(disable : 4661) // no suitable definition provided for explicit 29 template <
class Atom_,
class Mol_>
52 bool operator<(
const ThisType &other)
const;
54 bool operator>(
const ThisType &other)
const;
71 template <
class Atom_,
class Mol_>
102 int _findNext(
int from);
103 int _findPrev(
int from);
107 template <
class Atom_,
class Mol_>
134 int _findNext(
int from);
135 int _findPrev(
int from);
139 template <
class Atom_,
class Mol_>
167 int _findNext(
int from);
168 int _findPrev(
int from);
172 template <
class Atom_,
class Mol_>
198 bool (*_qF)(Atom_ *);
200 int _findNext(
int from);
201 int _findPrev(
int from);
Atom_ * operator*() const
bool operator>(const ThisType &other) const
AtomIterator_ operator+(int val) const
AtomIterator_ & operator+=(int val)
bool operator<(const ThisType &other) const
Iterate over aromatic atoms, this is bidirectional.
Iterate over atoms matching a query. This is bidirectional.
AromaticAtomIterator_< Atom_, Mol_ > ThisType
AtomIterator_ operator-(int val) const
Class for storing atomic queries.
bool operator<=(const ThisType &other) const
HeteroatomIterator_< Atom_, Mol_ > ThisType
bool operator>=(const ThisType &other) const
AtomIterator_< Atom_, Mol_ > ThisType
bool operator!=(const ThisType &other) const
Includes a bunch of functionality for handling Atom and Bond queries.
A general random access iterator.
QueryAtomIterator_< Atom_, Mol_ > ThisType
Iterate over atoms matching a query function. This is bidirectional.
Atom_ * operator[](const int which) const
MatchingAtomIterator_< Atom_, Mol_ > ThisType
bool operator==(const ThisType &other) const
Iterate over heteroatoms, this is bidirectional.
AtomIterator_ & operator=(const ThisType &other)
AtomIterator_ & operator-=(int val)