#include <ring.h>
Public Member Functions | |
bool | findCenterAndNormal (vector3 ¢er, vector3 &norm1, vector3 &norm2) |
OBRing () | |
OBRing (std::vector< int > &, int) | |
OBRing (const OBRing &src) | |
OBRing copy constructor. | |
OBRing & | operator= (const OBRing &src) |
OBRing assignment operator. | |
int | Size () const |
int | PathSize () const |
bool | IsMember (OBAtom *a) |
bool | IsMember (OBBond *b) |
bool | IsAromatic () |
bool | IsInRing (int i) |
void | SetParent (OBMol *m) |
OBMol * | GetParent () |
Public Attributes | |
std::vector< int > | _path |
OBBitVec | _pathset |
Ring information beyond atom and bond membership is usually not necessary, but more information can be had about the rings in a molecule. The OBRing class is used to store the information from a Smallest Set of Smallest Rings (SSSR) perception of a molecule. The OBMol member function OBMol::GetSSSR() stores the information it perceives in a vector<OBRing*> inside the molecule. Perception is only done once for a molecule unless the connection table is modified. The following code demonstrates how to extract the SSSR information:
OBMol mol; vector<OBRing*> vr; vr = mol.GetSSSR();
vector<OBRing*>::iterator i; vector<int>::iterator j; vector<OBRing*> *rlist = (vector<OBRing*>*)mol.GetData("RingList"); for (i = rlist->begin();i != rlist->end();i++) { for(j = (*i)->_path.begin();j != (*i)->_path.end();j++) cout << *j << ` `; cout << endl; }
1 2 3 4 5 6
Implements blue-obelisk:findSmallestSetOfSmallestRings.
OBRing | ( | ) | [inline] |
OBRing | ( | std::vector< int > & | , | |
int | ||||
) |
int Size | ( | ) | const [inline] |
int PathSize | ( | ) | const [inline] |
bool IsMember | ( | OBAtom * | a | ) |
bool IsMember | ( | OBBond * | b | ) |
bool IsAromatic | ( | ) |
bool IsInRing | ( | int | i | ) | [inline] |
void SetParent | ( | OBMol * | m | ) | [inline] |
OBMol* GetParent | ( | ) | [inline] |
std::vector<int> _path |