53 OBRing(std::vector<int>& path,
int size);
62 size_t Size()
const {
return(_path.size()); }
65 size_t PathSize()
const {
return(_path.size()); }
73 void SetType(
char *type);
75 void SetType(std::string &type);
81 unsigned int GetRootAtom();
120 std::vector<OBBond*> _bonds;
121 std::vector<OBRing*> _rlist;
129 std::vector<OBRing*>::iterator j;
132 for (j = _rlist.begin(), ring_id = 0; j != _rlist.end(); ++j, ++ring_id)
133 (*j)->ring_id = ring_id;
137 void RemoveRedundant(
int);
141 bool SaveUniqueRing(std::deque<int>&,std::deque<int>&);
148 std::vector<OBRing*>::iterator BeginRings()
151 return(_rlist.begin());
156 return(_rlist.end());
177 void PathToRoot(std::vector<OBAtom*>&);
Stores information on rings in a molecule from SSSR perception.
Definition: ring.h:40
bool BitIsSet(unsigned bit_offset) const
Asks if the bit_offset 'th bit is set.
Definition: bitvec.h:150
Internal class to facilitate OBMol::FindSSSR()
Definition: ring.h:118
Bond class.
Definition: bond.h:58
Molecule Class.
Definition: mol.h:118
bool CompareRingSize(const OBRing *, const OBRing *)
Definition: ring.cpp:486
OBRing(std::vector< int > &path, OBBitVec set)
Definition: ring.h:54
OBRing()
Definition: ring.h:51
Internal class for OBRing search algorithms to create a search tree of OBAtom objects.
Definition: ring.h:165
void SortRings()
Sort ring sizes from smallest to largest.
Definition: ring.h:127
bool IsInRing(int i)
Definition: ring.h:89
std::vector< OBRing * >::iterator EndRings()
Definition: ring.h:154
A speed-optimized vector of bits.
Definition: bitvec.h:57
int ring_id
a unique id to ensure a stable sort in SSSR determination
Definition: ring.h:45
size_t PathSize() const
Definition: ring.h:65
std::vector< int > _path
the path of this ring (i.e., the atom indexes)
Definition: ring.h:46
Represents a vector in 3-dimensional real space.
Definition: vector3.h:44
OBBitVec _pathset
the path of this ring as a redundant bit vector
Definition: ring.h:47
~OBRTree()
Definition: ring.h:172
OBMol * GetParent()
Definition: ring.h:97
Open Babel atom and aromaticity typer.
size_t Size() const
Definition: ring.h:62
OBRingSearch()
Definition: ring.h:123
Fast and efficient bitstring class.
void SetParent(OBMol *m)
Set the parent of this ring to m.
Definition: ring.h:95
Global namespace for all Open Babel code.
Definition: alias.h:22
Atom class.
Definition: atom.h:71