23 #include <openbabel/babelconfig.h> 42 std::vector<OBAtom*>::iterator _i;
55 operator bool()
const {
return _ptr != NULL; }
71 std::stack<OBAtom *> _stack;
82 operator bool()
const {
return _ptr != NULL; }
106 std::queue<OBAtom *> _queue;
107 std::vector<int> _depth;
118 operator bool()
const {
return _ptr != NULL; }
129 int CurrentDepth()
const;
137 std::queue<OBBond *> _queue;
138 std::vector<int> _depth;
149 operator bool()
const {
return _ptr != NULL; }
160 int CurrentDepth()
const;
165 std::vector<OBBond*>::iterator _i;
178 operator bool()
const {
return _ptr != NULL; }
191 std::vector<OBBond*>::iterator _i;
204 operator bool()
const {
return _ptr != NULL; }
217 std::vector<OBBond*>::iterator _i;
230 operator bool()
const {
return _ptr != NULL; }
243 std::vector<OBResidue*>::iterator _i;
256 operator bool()
const {
return _ptr != NULL; }
269 std::vector<OBAtom*>::iterator _i;
282 operator bool()
const {
return _ptr != NULL; }
296 std::vector<std::vector<unsigned int> > _vangle;
297 std::vector<std::vector<unsigned int> >::iterator _i;
298 std::vector<unsigned int> _angle;
309 operator bool()
const {
return (_i != _vangle.end()); }
314 std::vector<unsigned int>
operator*()
const {
return _angle; }
320 std::vector<std::vector<unsigned int> > _vtorsion;
321 std::vector<std::vector<unsigned int> >::iterator _i;
322 std::vector<unsigned int> _torsion;
333 operator bool()
const {
return (_i != _vtorsion.end()); }
338 std::vector<unsigned int>
operator*()
const {
return _torsion; }
343 std::vector<OBAtom*>::iterator _i;
344 std::vector<OBAtom*>::iterator _j;
348 std::vector<unsigned int> _pair;
360 operator bool()
const {
return _pair.size()>0; }
365 std::vector<unsigned int>
operator*()
const {
return _pair; }
373 std::vector<OBRing*>::iterator _i;
387 operator bool()
const {
return _ptr != NULL; }
398 #define FOR_ATOMS_OF_MOL(a,m) for( OpenBabel::OBMolAtomIter a(m); a; ++a ) 399 #define FOR_BONDS_OF_MOL(b,m) for( OpenBabel::OBMolBondIter b(m); b; ++b ) 400 #define FOR_NBORS_OF_ATOM(a,p) for( OpenBabel::OBAtomAtomIter a(p); a; ++a ) 401 #define FOR_BONDS_OF_ATOM(b,p) for( OpenBabel::OBAtomBondIter b(p); b; ++b ) 402 #define FOR_RESIDUES_OF_MOL(r,m) for( OpenBabel::OBResidueIter r(m); r; ++r ) 403 #define FOR_ATOMS_OF_RESIDUE(a,r) for( OpenBabel::OBResidueAtomIter a(r); a; ++a ) 404 #define FOR_DFS_OF_MOL(a,m) for( OpenBabel::OBMolAtomDFSIter a(m); a; ++a ) 405 #define FOR_BFS_OF_MOL(a,m) for( OpenBabel::OBMolAtomBFSIter a(m); a; ++a ) 406 #define FOR_BONDBFS_OF_MOL(b,m) for( OpenBabel::OBMolBondBFSIter b(m); b; ++b ) 407 #define FOR_RINGS_OF_MOL(r,m) for( OpenBabel::OBMolRingIter r(m); r; ++r ) 408 #define FOR_ANGLES_OF_MOL(a,m) for( OpenBabel::OBMolAngleIter a(m); a; ++a ) 409 #define FOR_TORSIONS_OF_MOL(t,m) for( OpenBabel::OBMolTorsionIter t(m); t; ++t ) 410 #define FOR_PAIRS_OF_MOL(p,m) for( OpenBabel::OBMolPairIter p(m); p; ++p ) 413 #endif // OB_OBITER_H Used to store the SSSR set (filled in by OBMol::GetSSSR())
Definition: generic.h:255
~OBAtomBondIter()
Definition: obiter.h:226
OBBond & operator*() const
Definition: obiter.h:186
OBMolAtomDFSIter()
Definition: obiter.h:74
~OBMolBondIter()
Definition: obiter.h:174
~OBAtomAtomIter()
Definition: obiter.h:200
Iterate over all neighboring atoms to an OBAtom.
Definition: obiter.h:190
OBMolRingIter()
Definition: obiter.h:379
std::vector< unsigned int > operator*() const
Definition: obiter.h:314
Stores information on rings in a molecule from SSSR perception.
Definition: ring.h:40
OBRing * operator->() const
Definition: obiter.h:393
OBBond * operator->() const
Definition: obiter.h:184
~OBMolRingIter()
Definition: obiter.h:383
Bond class.
Definition: bond.h:58
Iterate over all atoms in an OBMol.
Definition: obiter.h:41
~OBResidueIter()
Definition: obiter.h:252
Molecule Class.
Definition: mol.h:118
Iterate over all atoms in an OBMol in a breadth-first search (BFS)
Definition: obiter.h:102
Iterate over all rings in an OBMol.
Definition: obiter.h:372
Iterate over all residues in an OBMol.
Definition: obiter.h:242
Iterate over all bonds in an OBMol in a breadth-first search (BFS)
Definition: obiter.h:133
OBAtom & operator*() const
Definition: obiter.h:126
OBMolAtomIter()
Definition: obiter.h:47
Iterate over all pairs of atoms (>1-4) in an OBMol.
Definition: obiter.h:342
OBRing & operator*() const
Definition: obiter.h:395
OBMolAtomBFSIter()
Definition: obiter.h:110
~OBMolAtomDFSIter()
Definition: obiter.h:78
A speed-optimized vector of bits.
Definition: bitvec.h:57
~OBMolAngleIter()
Definition: obiter.h:305
OBResidueIter()
Definition: obiter.h:248
OBBond & operator*() const
Definition: obiter.h:157
OBMolTorsionIter()
Definition: obiter.h:325
~OBResidueAtomIter()
Definition: obiter.h:278
OBAtom & operator*() const
Definition: obiter.h:290
OBBond * operator->() const
Definition: obiter.h:155
OBAtom * operator->() const
Definition: obiter.h:288
std::vector< unsigned int > operator*() const
Definition: obiter.h:338
OBMolBondBFSIter()
Definition: obiter.h:141
Iterate over all bonds on an OBAtom.
Definition: obiter.h:216
OBAtomBondIter()
Definition: obiter.h:222
OBAtom * operator->() const
Definition: obiter.h:210
~OBMolAtomBFSIter()
Definition: obiter.h:114
std::vector< unsigned int > operator*() const
Definition: obiter.h:365
~OBMolBondBFSIter()
Definition: obiter.h:145
Iterate over all bonds in an OBMol.
Definition: obiter.h:164
~OBMolAtomIter()
Definition: obiter.h:51
OBAtom & operator*() const
Definition: obiter.h:212
OBResidue & operator*() const
Definition: obiter.h:264
Iterate over all atoms in an OBResidue.
Definition: obiter.h:268
OBAtom * next()
Definition: obiter.h:92
OBMolAngleIter()
Definition: obiter.h:301
OBBond * operator->() const
Definition: obiter.h:236
Iterate over all torsions in an OBMol.
Definition: obiter.h:318
OBResidueAtomIter()
Definition: obiter.h:274
OBAtom * operator->() const
Definition: obiter.h:124
Fast and efficient bitstring class.
~OBMolPairIter()
Definition: obiter.h:356
OBAtom * operator->() const
Definition: obiter.h:61
OBAtomAtomIter()
Definition: obiter.h:196
OBAtom & operator*() const
Definition: obiter.h:90
OBBond & operator*() const
Definition: obiter.h:238
OBMolBondIter()
Definition: obiter.h:170
OBMolPairIter()
Definition: obiter.h:352
Iterate over all angles in an OBMol.
Definition: obiter.h:294
OBAtom * operator->() const
Definition: obiter.h:88
OBAtom & operator*() const
Definition: obiter.h:63
Residue information.
Definition: residue.h:50
OBResidue * operator->() const
Definition: obiter.h:262
~OBMolTorsionIter()
Definition: obiter.h:329
Iterate over all atoms in an OBMol in a depth-first search (DFS)
Definition: obiter.h:67
Global namespace for all Open Babel code.
Definition: alias.h:22
Atom class.
Definition: atom.h:71