#include <openbabel/atom.h>
Public Member Functions | |
OBAtom () | |
virtual | ~OBAtom () |
OBAtom & | operator= (OBAtom &) |
void | Duplicate (OBAtom *) |
bool | Clear () |
double | GetDistance (int index) |
double | GetDistance (OBAtom *) |
double | GetAngle (int b, int c) |
double | GetAngle (OBAtom *b, OBAtom *c) |
virtual OBBase * | DoTransformations (const std::map< std::string, std::string > *) |
template<class T> | |
T * | CastAndClear (bool clear=true) |
Methods to set atomic information | |
void | SetIdx (int idx) |
void | SetHyb (int hyb) |
void | SetAtomicNum (int atomicnum) |
void | SetIsotope (unsigned int iso) |
void | SetImplicitValence (int val) |
void | IncrementImplicitValence () |
void | DecrementImplicitValence () |
void | SetFormalCharge (int fcharge) |
void | SetSpinMultiplicity (short spin) |
void | SetType (const char *type) |
void | SetType (const std::string &type) |
void | SetPartialCharge (double pcharge) |
void | SetVector (const vector3 &v) |
void | SetVector (const double x, const double y, const double z) |
void | SetCoordPtr (double **c) |
void | SetVector () |
void | SetResidue (OBResidue *res) |
void | SetParent (OBMol *ptr) |
void | SetAromatic () |
void | UnsetAromatic () |
void | SetClockwiseStereo () |
void | SetAntiClockwiseStereo () |
void | SetPositiveStereo () |
void | SetNegativeStereo () |
void | UnsetStereo () |
void | SetInRing () |
void | SetChiral () |
void | ClearCoordPtr () |
Methods to retrieve atomic information | |
int | GetFormalCharge () const |
unsigned int | GetAtomicNum () const |
unsigned short int | GetIsotope () const |
int | GetSpinMultiplicity () const |
double | GetAtomicMass () const |
double | GetExactMass () const |
unsigned int | GetIdx () const |
unsigned int | GetCoordinateIdx () const |
unsigned int | GetCIdx () const |
unsigned int | GetValence () const |
unsigned int | GetHyb () const |
unsigned int | GetImplicitValence () const |
unsigned int | GetHvyValence () const |
unsigned int | GetHeteroValence () const |
char * | GetType () |
double | GetX () const |
double | GetY () const |
double | GetZ () const |
double | x () const |
double | y () const |
double | z () const |
double * | GetCoordinate () |
vector3 & | GetVector () |
const vector3 & | GetVector () const |
double | GetPartialCharge () |
OBResidue * | GetResidue () |
OBResidue * | GetResidue (bool perception) |
OBMol * | GetParent () |
bool | GetNewBondVector (vector3 &v, double length) |
OBBond * | GetBond (OBAtom *) |
OBAtom * | GetNextAtom () |
Iterator methods | |
OBBondIterator | BeginBonds () |
OBBondIterator | EndBonds () |
OBBond * | BeginBond (OBBondIterator &i) |
OBBond * | NextBond (OBBondIterator &i) |
OBAtom * | BeginNbrAtom (OBBondIterator &i) |
OBAtom * | NextNbrAtom (OBBondIterator &i) |
Addition of residue/bond info. for an atom | |
void | NewResidue () |
void | AddResidue (OBResidue *res) |
void | DeleteResidue () |
void | AddBond (OBBond *bond) |
void | InsertBond (OBBondIterator &i, OBBond *bond) |
bool | DeleteBond (OBBond *bond) |
void | ClearBond () |
Builder utilities | |
bool | HtoMethyl () |
bool | SetHybAndGeom (int) |
void | ForceNoH () |
bool | HasNoHForced () |
void | ForceImplH () |
bool | HasImplHForced () |
Property information | |
unsigned int | CountFreeOxygens () const |
unsigned int | ImplicitHydrogenCount () const |
unsigned int | ExplicitHydrogenCount (bool ExcludeIsotopes=false) const |
unsigned int | MemberOfRingCount () const |
unsigned int | MemberOfRingSize () const |
unsigned int | CountRingBonds () const |
double | SmallestBondAngle () |
double | AverageBondAngle () |
unsigned int | BOSum () const |
unsigned int | KBOSum () const |
bool | HasResidue () |
bool | IsHydrogen () |
bool | IsCarbon () |
bool | IsNitrogen () |
bool | IsOxygen () |
bool | IsSulfur () |
bool | IsPhosphorus () |
bool | IsAromatic () const |
bool | IsInRing () const |
bool | IsInRingSize (int) const |
bool | IsHeteroatom () |
bool | IsNotCorH () |
bool | IsConnected (OBAtom *) |
bool | IsOneThree (OBAtom *) |
bool | IsOneFour (OBAtom *) |
bool | IsCarboxylOxygen () |
bool | IsPhosphateOxygen () |
bool | IsSulfateOxygen () |
bool | IsNitroOxygen () |
bool | IsAmideNitrogen () |
bool | IsPolarHydrogen () |
bool | IsNonPolarHydrogen () |
bool | IsAromaticNOxide () |
bool | IsChiral () |
bool | IsAxial () |
bool | IsClockwise () |
bool | IsAntiClockwise () |
bool | IsPositiveStereo () |
bool | IsNegativeStereo () |
bool | HasChiralitySpecified () |
bool | HasChiralVolume () |
bool | IsHbondAcceptor () |
bool | IsHbondDonor () |
bool | IsHbondDonorH () |
bool | HasAlphaBetaUnsat (bool includePandS=true) |
bool | HasBondOfOrder (unsigned int bo) |
int | CountBondsOfOrder (unsigned int bo) |
bool | HasNonSingleBond () |
bool | HasSingleBond () |
bool | HasDoubleBond () |
bool | HasAromaticBond () |
bool | MatchesSMARTS (const char *) |
Generic data handling methods (via OBGenericData) | |
bool | HasData (const std::string &) |
bool | HasData (const char *) |
bool | HasData (const unsigned int type) |
void | DeleteData (unsigned int type) |
void | DeleteData (OBGenericData *) |
void | DeleteData (std::vector< OBGenericData * > &) |
bool | DeleteData (const std::string &s) |
void | SetData (OBGenericData *d) |
void | CloneData (OBGenericData *d) |
unsigned int | DataSize () const |
OBGenericData * | GetData (const unsigned int type) |
OBGenericData * | GetData (const std::string &) |
OBGenericData * | GetData (const char *) |
std::vector< OBGenericData * > & | GetData () |
std::vector< OBGenericData * > | GetData (DataOrigin source) |
std::vector< OBGenericData * > | GetAllData (const unsigned int type) |
OBDataIterator | BeginData () |
OBDataIterator | EndData () |
Static Public Member Functions | |
static const char * | ClassDescription () |
Public Attributes | |
bool | Visit |
Protected Member Functions | |
int | GetFlag () const |
void | SetFlag (int flag) |
bool | HasFlag (int flag) |
Protected Attributes | |
char | _ele |
char | _impval |
char | _type [6] |
short | _fcharge |
unsigned short | _isotope |
short | _spinmultiplicity |
unsigned int | _idx |
OBMol * | _parent |
std::vector< OBBond * > | _vbond |
unsigned int | _cidx |
unsigned short | _hyb |
unsigned short | _flags |
double | _pcharge |
double ** | _c |
vector3 | _v |
OBResidue * | _residue |
std::vector< OBGenericData * > | _vdata |
To understand the OBAtom class it is important to state a key decision on which the design was based. The OBAtom class not only holds data, but facilitates extraction of data perceived from both the atom and the molecule. This prevents the OBMol class from becoming overly large and complicated.
A number of data extraction methods perform what is called `Lazy Evaluation,' which is essentially on-the-fly evaluation. For example, when an atom is queried as to whether it is cyclic or what it's hybridization state is the information is perceived automatically. The perception of a particular trait is actually performed on the entire molecule the first time it is requested of an atom or bond, and stored for subsequent requests for the same trait of additional atoms or bonds.The OBAtom class is similar to OBMol and the whole of Open Babel in that data access and modification is done through Get and Set methods.
The following code demonstrates how to print out the atom numbers, element numbers, and coordinates of a molecule:
OBMol mol; FOR_ATOMS_OF_MOL(atom, mol) { cout << atom->GetIdx() << ` `; cout << atom->GetAtomicNum() << ` `; cout << atom->GetVector() << endl; }
OBMol mol; OBAtom *atom; atom = mol.GetAtom(1); FOR_NBORS_OF_ATOM(nbr, atom) { cout << "atom #" << atom->GetIdx() << " is attached to atom #" << nbr->GetIdx() << endl; }
should produce an output like
atom #1 is attached to atom #2
OBAtom | ( | ) |
Constructor.
~OBAtom | ( | ) | [virtual] |
Destructor.
int GetFlag | ( | ) | const [inline, protected] |
void SetFlag | ( | int | flag | ) | [inline, protected] |
Sets the bitwise flag
.
bool HasFlag | ( | int | flag | ) | [inline, protected] |
flag
Referenced by OBAtom::IsAromatic(), OBAtom::IsChiral(), OBAtom::IsInRing(), and OBAtom::IsInRingSize().
void Duplicate | ( | OBAtom * | src | ) |
Duplicate another atom. Copies all information with the exception of index
Referenced by OBUnitCell::FillUnitCell(), and OBAtom::operator=().
bool Clear | ( | void | ) | [virtual] |
Clear all data. Calls OBBase::Clear() to handle any generic data.
Reimplemented from OBBase.
Referenced by OBAtom::OBAtom().
void SetIdx | ( | int | idx | ) | [inline] |
Set atom index (i.e., in an OBMol).
Referenced by OBMol::AddAtom(), OBMol::DeleteAtom(), OBMol::DeleteHydrogen(), OBMol::EndModify(), and OBMol::NewAtom().
void SetHyb | ( | int | hyb | ) | [inline] |
Set atom hybridization (i.e., 1 = sp, 2 = sp2, 3 = sp3 ...).
Referenced by OBResidueData::AssignBonds(), OBAtomTyper::AssignHyb(), OBAtom::HtoMethyl(), OBMol::PerceiveBondOrders(), and OBAtom::SetHybAndGeom().
void SetAtomicNum | ( | int | atomicnum | ) | [inline] |
Set atomic number.
Referenced by OBMol::AddHydrogens(), OBChemTsfm::Apply(), AliasData::Expand(), OBAtom::HtoMethyl(), and OBAtom::SetHybAndGeom().
void SetIsotope | ( | unsigned int | iso | ) |
Set isotope number (actual atomic weight is tabulated automatically, 0 = most abundant).
Referenced by AliasData::Expand().
void SetImplicitValence | ( | int | val | ) | [inline] |
void IncrementImplicitValence | ( | ) | [inline] |
void DecrementImplicitValence | ( | ) | [inline] |
void SetFormalCharge | ( | int | fcharge | ) | [inline] |
Set the formal charge of the atom to fcharge
.
Referenced by OBChemTsfm::Apply(), OBResidueData::AssignBonds(), OBMol::ConvertDativeBonds(), AliasData::Expand(), OpenBabel::ExpandKekule(), and OBMol::NewPerceiveKekuleBonds().
void SetSpinMultiplicity | ( | short | spin | ) | [inline] |
void SetType | ( | const char * | type | ) |
Set the atomic type symbol (see OBTypeTable and OBAtomTyper for more).
Referenced by OBMol::AddHydrogens(), OBResidueData::AssignBonds(), OBAtomTyper::AssignTypes(), OBForceField::GetGrid(), OBAtom::HtoMethyl(), OBAtom::SetHybAndGeom(), and OBAtom::SetIsotope().
void SetType | ( | const std::string & | type | ) |
Set the atomic type symbol (see OBTypeTable and OBAtomTyper for more).
void SetPartialCharge | ( | double | pcharge | ) | [inline] |
Set the partial charge to pcharge
.
Referenced by OBGastChrg::AssignPartialCharges(), OBPhModel::AssignSeedPartialCharge(), OBForceField::GetGrid(), and OBAtom::GetPartialCharge().
void SetVector | ( | const vector3 & | v | ) |
Set the coordinate vector for this atom to v
as a vector3.
Referenced by OBMol::Align(), OpenBabel::ApplyRotMatToBond(), OBMol::BeginModify(), OBBuilder::Build(), OpenBabel::CalcSignedVolume(), OBMol::Center(), OBBuilder::Connect(), OBUnitCell::FillUnitCell(), OBForceField::GetCoordinates(), OBAtom::GetNewBondVector(), OBAtom::HtoMethyl(), OpenBabel::InternalToCartesian(), OBForceField::LineSearch(), OBForceField::NumericalDerivative(), OBForceField::NumericalSecondDerivative(), OBForceField::SetConformers(), OBForceField::SetCoordinates(), OBAtom::SetHybAndGeom(), OBBond::SetLength(), OBForceField::ValidateConjugateGradients(), OBForceField::ValidateLineSearch(), and OBForceField::ValidateSteepestDescent().
void SetVector | ( | const double | x, | |
const double | y, | |||
const double | z | |||
) |
Set the coordinate vector for this atom based on x
y
& z
.
void SetCoordPtr | ( | double ** | c | ) | [inline] |
Set the position of this atom from a pointer-driven array of coordinates.
Referenced by OBMol::AddHydrogens(), OBMol::ConnectTheDots(), OBMol::EndModify(), and OBMol::SetCoordinates().
void SetVector | ( | ) |
Set the position of this atom based on the internal pointer array (i.e. from SetCoordPtr() ).
void SetResidue | ( | OBResidue * | res | ) | [inline] |
Attach an OBResidue res
as containing this atom.
Referenced by OBResidue::AddAtom(), OBMol::AddHydrogens(), and OBResidue::RemoveAtom().
void SetParent | ( | OBMol * | ptr | ) | [inline] |
Attach an OBMol ptr
as the parent container for this atom.
Referenced by OBMol::AddAtom(), and OBMol::NewAtom().
void SetAromatic | ( | ) | [inline] |
Mark atom as being aromatic.
Referenced by OBMol::AddBond(), OBAromaticTyper::CheckAromaticity(), OBBond::SetBondOrder(), and OBAromaticTyper::TraverseCycle().
void UnsetAromatic | ( | ) | [inline] |
void SetClockwiseStereo | ( | ) | [inline] |
Mark atom as having SMILES clockwise stereochemistry (i.e., "@@").
Referenced by OpenBabel::CorrectChirality().
void SetAntiClockwiseStereo | ( | ) | [inline] |
Mark atom as having SMILES anticlockwise stereochemistry (i.e., "@").
Referenced by OpenBabel::CorrectChirality().
void SetPositiveStereo | ( | ) | [inline] |
Mark an atom as having + chiral volume.
void SetNegativeStereo | ( | ) | [inline] |
Mark an atom as having - chiral volume.
void UnsetStereo | ( | ) | [inline] |
void SetInRing | ( | ) | [inline] |
Mark an atom as belonging to at least one ring.
void SetChiral | ( | ) | [inline] |
Mark an atom as being chiral with unknown stereochemistry.
Referenced by OBMol::FindChiralCenters().
void ClearCoordPtr | ( | ) | [inline] |
Clear the internal coordinate pointer.
Referenced by OBMol::BeginModify(), and OBMol::ConnectTheDots().
int GetFormalCharge | ( | ) | const [inline] |
Referenced by OBMol::ConvertDativeBonds(), OBAtom::Duplicate(), OpenBabel::EvalAtomExpr(), AliasData::Expand(), OpenBabel::ExpandKekule(), OpenBabel::GetGIVector(), OBMol::getorden(), OBMol::GetTotalCharge(), OBMol::NewPerceiveKekuleBonds(), and OBMol::PerceiveKekuleBonds().
unsigned int GetAtomicNum | ( | ) | const [inline] |
Referenced by OBMol::AddHydrogens(), OBAromaticTyper::AssignAromaticFlags(), OpenBabel::CalculateSymmetry(), OBMol::ConnectTheDots(), OpenBabel::construct_g_matrix(), OBAtom::Duplicate(), OpenBabel::EvalAtomExpr(), OBBond::GetEquibLength(), OBMol::GetGIVector(), OpenBabel::GetGIVector(), OpenBabel::GetHvyBondSum(), OBMol::getorden(), OBAtom::GetType(), OBAtom::HtoMethyl(), OpenBabel::InternalToCartesian(), OBBond::IsAmide(), OBAtom::IsAmideNitrogen(), OBBond::IsCarbonyl(), OBBond::IsEster(), OBAtom::IsHeteroatom(), OBAtom::IsNonPolarHydrogen(), OBAtom::IsNotCorH(), OBAtom::IsPolarHydrogen(), OBBond::IsPrimaryAmide(), OBBond::IsSecondaryAmide(), OBMol::PerceiveBondOrders(), OBMol::PerceiveKekuleBonds(), and OBAtom::SetHybAndGeom().
unsigned short int GetIsotope | ( | ) | const [inline] |
Referenced by OBAtom::Duplicate(), OpenBabel::EvalAtomExpr(), and OBAtom::ExplicitHydrogenCount().
int GetSpinMultiplicity | ( | ) | const [inline] |
Referenced by OBMol::AddHydrogens(), OBAtom::Duplicate(), OBMol::GetTotalSpinMultiplicity(), and OBAtom::ImplicitHydrogenCount().
double GetAtomicMass | ( | ) | const |
Referenced by OBMol::GetMolWt(), and OBMol::ToInertialFrame().
double GetExactMass | ( | ) | const |
Referenced by OBMol::GetExactMass().
unsigned int GetIdx | ( | ) | const [inline] |
Referenced by OBMol::AddAtom(), OBMol::AddHydrogens(), OBMol::Align(), OpenBabel::ApplyRotMatToBond(), OBAromaticTyper::AssignAromaticFlags(), OBResidueData::AssignBonds(), OBGastChrg::AssignPartialCharges(), OpenBabel::BreakChiralTies(), OBBuilder::Build(), OpenBabel::BuildOBRTreeVector(), OpenBabel::CalcSignedVolume(), OpenBabel::CalculateSymmetry(), OpenBabel::CartesianToInternal(), OBAromaticTyper::CheckAromaticity(), OBMol::ConnectTheDots(), OBMol::ContigFragList(), OBBuilder::CorrectStereoAtoms(), OpenBabel::CreateNewClassVector(), OBMolAtomBFSIter::CurrentDepth(), OBMol::DeleteAtom(), OBMol::DeleteHydrogen(), OpenBabel::EvalAtomExpr(), OBAromaticTyper::ExcludeSmallRing(), OBMol::expand_kekulize(), OBMol::expandcycle(), OpenBabel::ExpandKekule(), OpenBabel::FastSingleMatch(), OBMol::FindChildren(), OBMol::FindChiralCenters(), OpenBabel::FindConjugatedEZBonds(), OBMol::FindLargestFragment(), OpenBabel::FixCisTransBonds(), OBRTree::GetAtomIdx(), OpenBabel::GetDFFVector(), OBBuilder::GetFragment(), OpenBabel::GetGIVector(), OBForceField::GetGradient(), OBForceField::GetGrid(), OBMol::GetGTDVector(), OpenBabel::GetGTDVector(), OpenBabel::GetHvyBondSum(), OpenBabel::GetHvyValence(), OBAtom::GetNextAtom(), OBRotorRules::GetRotorIncrements(), OpenBabel::GetValence(), OBAtom::HtoMethyl(), OBGrid::Init(), OpenBabel::InternalToCartesian(), OBBond::IsClosure(), OBRotorList::IsFixedBond(), OBAtom::IsInRingSize(), OBForceField::IsInSameRing(), OBRing::IsMember(), OpenBabel::KekulePropagate(), OBSSMatch::Match(), OBAtom::MatchesSMARTS(), OBAtom::MemberOfRingCount(), OBAtom::MemberOfRingSize(), OBMol::NewAtom(), OBMolAtomBFSIter::OBMolAtomBFSIter(), OBMolAtomDFSIter::OBMolAtomDFSIter(), OBMolPairIter::OBMolPairIter(), OBMolPairIter::operator++(), OBMolAtomBFSIter::operator++(), OBMolAtomDFSIter::operator++(), OBMol::operator=(), OBAtom::operator=(), OBMol::PerceiveKekuleBonds(), OBAromaticTyper::PropagatePotentialAromatic(), OBMol::RenumberAtoms(), OBAromaticTyper::SelectRootAtoms(), OBRotorList::SetEvalAtoms(), OBAtom::SetHybAndGeom(), OBBond::SetLength(), OBMol::SetTorsion(), OBProxGrid::Setup(), OpenBabel::SetupAtomMatchTable(), OBMol::start_kekulize(), and OBAromaticTyper::TraverseCycle().
unsigned int GetCoordinateIdx | ( | ) | const [inline] |
unsigned int GetCIdx | ( | ) | const [inline] |
Referenced by OBMol::DeleteHydrogen(), OpenBabel::SetRotorToAngle(), and OBMol::SetTorsion().
unsigned int GetValence | ( | ) | const [inline] |
Referenced by OBMol::AddBond(), OBMol::AddHydrogens(), OBResidueData::AssignBonds(), OBAtomTyper::AssignImplicitValence(), OBMol::ConnectTheDots(), OpenBabel::construct_c_matrix(), OpenBabel::construct_g_matrix(), OpenBabel::EvalAtomExpr(), OBBuilder::GetNewBondVector(), OBAtom::GetNewBondVector(), OBMol::getorden(), OBRing::GetRootAtom(), OBAtom::ImplicitHydrogenCount(), OBBond::IsDoubleBondGeometry(), OBAtom::IsHbondAcceptor(), OBMol::PerceiveBondOrders(), and OBAtom::SetHybAndGeom().
unsigned int GetHyb | ( | ) | const |
Referenced by OBMol::AddHydrogens(), OBAromaticTyper::AssignAromaticFlags(), OpenBabel::construct_g_matrix(), OBAtom::Duplicate(), OpenBabel::EvalAtomExpr(), OBMol::FindChiralCenters(), OBBond::GetEquibLength(), OBBuilder::GetNewBondVector(), OBAtom::GetNewBondVector(), OBRotorRules::GetRotorIncrements(), OBAtom::HtoMethyl(), OBAtom::IsAxial(), OBBond::IsDoubleBondGeometry(), OBAtom::IsHbondAcceptor(), OBBond::IsRotor(), OBMol::PerceiveBondOrders(), and OBAtom::SetHybAndGeom().
unsigned int GetImplicitValence | ( | ) | const |
Referenced by OBMol::AddHydrogens(), OBAromaticTyper::AssignAromaticFlags(), OBAtomTyper::AssignImplicitValence(), OBMol::AssignSpinMultiplicity(), OpenBabel::EvalAtomExpr(), OpenBabel::ExpandKekule(), OpenBabel::GetCurrentValence(), OBMol::GetGIVector(), OpenBabel::GetHvyBondSum(), OBAtom::KBOSum(), and OpenBabel::ValenceSum().
unsigned int GetHvyValence | ( | ) | const |
Referenced by OBMol::AssignSpinMultiplicity(), OpenBabel::CalcSignedVolume(), OBAtom::CountFreeOxygens(), OpenBabel::ExpandKekule(), OBMol::FindChiralCenters(), OBMol::GetGIVector(), OBAtom::IsCarboxylOxygen(), OBMol::IsChiral(), OBAtom::IsNitroOxygen(), OBAtom::IsPhosphateOxygen(), OBBond::IsPrimaryAmide(), OBBond::IsRotor(), OBBond::IsSecondaryAmide(), OBAtom::IsSulfateOxygen(), and OBAtom::SetHybAndGeom().
unsigned int GetHeteroValence | ( | ) | const |
char * GetType | ( | ) |
Referenced by OBAtomTyper::AssignTypes(), and OBAtom::Duplicate().
double GetX | ( | ) | const [inline] |
double GetY | ( | ) | const [inline] |
double GetZ | ( | ) | const [inline] |
double x | ( | ) | const [inline] |
Referenced by OBMol::Center(), OBMol::Has2D(), OBMol::Has3D(), OBMol::ToInertialFrame(), OBForceField::ValidateConjugateGradients(), OBForceField::ValidateLineSearch(), and OBForceField::ValidateSteepestDescent().
double y | ( | ) | const [inline] |
Referenced by OBMol::Center(), OBMol::Has2D(), OBMol::Has3D(), OBMol::ToInertialFrame(), OBForceField::ValidateConjugateGradients(), OBForceField::ValidateLineSearch(), and OBForceField::ValidateSteepestDescent().
double z | ( | ) | const [inline] |
Referenced by OBMol::Center(), OBMol::Has3D(), OBMol::ToInertialFrame(), and OBForceField::ValidateConjugateGradients().
double* GetCoordinate | ( | ) | [inline] |
Referenced by OBForceField::GetGrid(), and OBForceField::UpdatePairsSimple().
vector3 & GetVector | ( | ) |
Referenced by OBMol::Align(), OpenBabel::ApplyRotMatToBond(), OBAtom::AverageBondAngle(), OpenBabel::CalcSignedVolume(), OpenBabel::CartesianToInternal(), OBMol::Center(), OBBuilder::Connect(), OBMol::ConnectTheDots(), OBAtom::Duplicate(), OBMol::EndModify(), OBAtom::GetAngle(), OBAtom::GetDistance(), OBBuilder::GetNewBondVector(), OBAtom::GetNewBondVector(), OBMol::GetTorsion(), OBMol::HasNonZeroCoords(), OBBond::IsDoubleBondGeometry(), OBForceField::LineSearch(), OpenBabel::match(), OBForceField::NumericalDerivative(), OBForceField::NumericalSecondDerivative(), OBAtom::SetHybAndGeom(), OBBond::SetLength(), OBAtom::SmallestBondAngle(), OBBuilder::Swap(), and OBForceField::ValidateLineSearch().
double GetPartialCharge | ( | ) |
Referenced by OBGastChrg::AssignPartialCharges(), and OBAtom::Duplicate().
OBResidue * GetResidue | ( | ) |
Referenced by OBMol::AddHydrogens(), OBResidueData::AssignBonds(), and OBResidue::GetBonds().
OBResidue * GetResidue | ( | bool | perception | ) |
perception | implies whether chain perception should occur |
OBMol* GetParent | ( | ) | [inline] |
Referenced by OpenBabel::BuildOBRTreeVector(), OpenBabel::EvalAtomExpr(), OBAtom::GetAngle(), OBAtom::GetDistance(), OBAtom::GetHyb(), OBAtom::GetImplicitValence(), OBAtom::GetNextAtom(), OBAtom::GetPartialCharge(), OBAtom::GetResidue(), OBAtom::GetType(), OBAtom::HtoMethyl(), OBAtom::ImplicitHydrogenCount(), OBAtom::IsAromatic(), OBAtom::IsAxial(), OBAtom::IsChiral(), OBAtom::IsInRing(), OBAtom::IsInRingSize(), OBAtom::MatchesSMARTS(), OBAtom::MemberOfRingCount(), OBAtom::MemberOfRingSize(), OBAtom::SetHybAndGeom(), and OBBond::SetLength().
bool GetNewBondVector | ( | vector3 & | v, | |
double | length | |||
) |
Create a vector for a new bond from this atom, with length given by the supplied parameter
Referenced by OBAtom::HtoMethyl(), and OBAtom::SetHybAndGeom().
Referenced by OBBondTyper::AssignFunctionalGroupBonds(), OBBuilder::Build(), OpenBabel::CorrectBadResonanceForm(), OBBuilder::CorrectStereoBonds(), OBMol::expand_kekulize(), and OBMol::PerceiveBondOrders().
OBAtom * GetNextAtom | ( | ) |
OBBondIterator BeginBonds | ( | ) | [inline] |
Referenced by OBResidueData::AssignBonds().
OBBondIterator EndBonds | ( | ) | [inline] |
OBBond * BeginBond | ( | OBBondIterator & | i | ) |
Set the iterator i
to the beginning of the bonds
Referenced by OBAtom::BOSum(), OpenBabel::CalcSignedVolume(), OBMol::ConnectTheDots(), OBMol::ContigFragList(), OBMol::ConvertDativeBonds(), OBAtom::CountBondsOfOrder(), OBAtom::CountFreeOxygens(), OBAtom::CountRingBonds(), OpenBabel::ExpandKekule(), OBMol::FindLargestFragment(), OpenBabel::FindRings(), OBAtom::GetBond(), OBResidue::GetBonds(), OpenBabel::GetCurrentValence(), OpenBabel::GetDFFVector(), OBMol::GetGTDVector(), OpenBabel::GetGTDVector(), OBAtom::GetHeteroValence(), OpenBabel::GetHvyBondSum(), OpenBabel::GetHvyValence(), OBAtom::GetHvyValence(), OpenBabel::GetValence(), OBAtom::HasBondOfOrder(), OBAtom::HasNonSingleBond(), OBBond::IsAmide(), OBAtom::IsAmideNitrogen(), OBAtom::IsCarboxylOxygen(), OBAtom::IsConnected(), OBBond::IsEster(), OBAtom::IsHbondDonorH(), OBAtom::IsNitroOxygen(), OBAtom::IsNonPolarHydrogen(), OBAtom::IsOneFour(), OBAtom::IsOneThree(), OBAtom::IsPhosphateOxygen(), OBAtom::IsPolarHydrogen(), OBBond::IsPrimaryAmide(), OBBond::IsSecondaryAmide(), OBAtom::IsSulfateOxygen(), OBAtom::KBOSum(), OpenBabel::KekulePropagate(), OBMol::NewPerceiveKekuleBonds(), OBAtomBondIter::OBAtomBondIter(), and OpenBabel::ValenceSum().
OBBond * NextBond | ( | OBBondIterator & | i | ) |
Increment the iterator i
Referenced by OpenBabel::CalcSignedVolume(), OBMol::ConnectTheDots(), OBMol::ContigFragList(), OBMol::ConvertDativeBonds(), OBAtom::CountBondsOfOrder(), OpenBabel::ExpandKekule(), OBMol::FindLargestFragment(), OpenBabel::FindRings(), OBAtom::GetBond(), OBResidue::GetBonds(), OpenBabel::GetCurrentValence(), OpenBabel::GetDFFVector(), OBMol::GetGTDVector(), OpenBabel::GetGTDVector(), OpenBabel::GetHvyBondSum(), OpenBabel::GetHvyValence(), OpenBabel::GetValence(), OBAtom::HasBondOfOrder(), OBAtom::HasNonSingleBond(), OBBond::IsAmide(), OBAtom::IsAmideNitrogen(), OBAtom::IsCarboxylOxygen(), OBAtom::IsConnected(), OBBond::IsEster(), OBAtom::IsHbondDonorH(), OBAtom::IsNitroOxygen(), OBAtom::IsNonPolarHydrogen(), OBAtom::IsOneFour(), OBAtom::IsOneThree(), OBAtom::IsPhosphateOxygen(), OBAtom::IsPolarHydrogen(), OBBond::IsPrimaryAmide(), OBBond::IsSecondaryAmide(), OBAtom::IsSulfateOxygen(), OpenBabel::KekulePropagate(), OBMol::NewPerceiveKekuleBonds(), OBAtomBondIter::operator++(), and OpenBabel::ValenceSum().
OBAtom * BeginNbrAtom | ( | OBBondIterator & | i | ) |
Set the iterator i
to the beginning of the bonds
Referenced by OBMol::AddBond(), OBAtomTyper::AssignTypes(), OBAtom::AverageBondAngle(), OpenBabel::BuildOBRTreeVector(), OpenBabel::CalcSignedVolume(), OBAromaticTyper::CheckAromaticity(), OpenBabel::CreateNewClassVector(), OBMol::DeleteAtom(), OBMol::DeleteHydrogen(), OBMol::DeleteHydrogens(), OBAromaticTyper::ExcludeSmallRing(), OBMol::expand_kekulize(), OBMol::expandcycle(), OpenBabel::ExpandKekule(), OBAtom::ExplicitHydrogenCount(), OpenBabel::FastSingleMatch(), OBMol::FindChildren(), OBMol::FindChiralCenters(), OBMol::FindTorsions(), OBMol::GetBond(), OBAtom::GetNewBondVector(), OBRotorRules::GetRotorIncrements(), OBAtom::HasAlphaBetaUnsat(), OBAtom::HtoMethyl(), OBAtom::IsAromaticNOxide(), OBAtom::IsAxial(), OBBond::IsClosure(), OBBond::IsDoubleBondGeometry(), OBRotorList::IsFixedBond(), OBAtom::IsHbondDonor(), OpenBabel::KekulePropagate(), OBSSMatch::Match(), OBAtomAtomIter::OBAtomAtomIter(), OBMolAtomBFSIter::OBMolAtomBFSIter(), OBMolAtomDFSIter::OBMolAtomDFSIter(), OBMolAtomBFSIter::operator++(), OBMolAtomDFSIter::operator++(), OBMol::PerceiveBondOrders(), OBMol::PerceiveKekuleBonds(), OBAromaticTyper::PropagatePotentialAromatic(), OBAromaticTyper::SelectRootAtoms(), OBRotorList::SetEvalAtoms(), OBAtom::SetHybAndGeom(), OBAtom::SmallestBondAngle(), OBMol::start_kekulize(), and OBAromaticTyper::TraverseCycle().
OBAtom * NextNbrAtom | ( | OBBondIterator & | i | ) |
Increment the iterator i
Referenced by OBAtomTyper::AssignTypes(), OBAtom::AverageBondAngle(), OpenBabel::BuildOBRTreeVector(), OpenBabel::CalcSignedVolume(), OBAromaticTyper::CheckAromaticity(), OpenBabel::CreateNewClassVector(), OBMol::DeleteAtom(), OBMol::DeleteHydrogen(), OBMol::DeleteHydrogens(), OBAromaticTyper::ExcludeSmallRing(), OBMol::expand_kekulize(), OBMol::expandcycle(), OpenBabel::ExpandKekule(), OBAtom::ExplicitHydrogenCount(), OpenBabel::FastSingleMatch(), OBMol::FindChildren(), OBMol::FindChiralCenters(), OBMol::FindTorsions(), OBMol::GetBond(), OBAtom::GetNewBondVector(), OBRotorRules::GetRotorIncrements(), OBAtom::HasAlphaBetaUnsat(), OBAtom::IsAromaticNOxide(), OBAtom::IsAxial(), OBBond::IsClosure(), OBRotorList::IsFixedBond(), OBAtom::IsHbondDonor(), OpenBabel::KekulePropagate(), OBSSMatch::Match(), OBMolAtomBFSIter::OBMolAtomBFSIter(), OBMolAtomDFSIter::OBMolAtomDFSIter(), OBAtomAtomIter::operator++(), OBMolAtomBFSIter::operator++(), OBMolAtomDFSIter::operator++(), OBMol::PerceiveBondOrders(), OBMol::PerceiveKekuleBonds(), OBAromaticTyper::PropagatePotentialAromatic(), OBAromaticTyper::SelectRootAtoms(), OBRotorList::SetEvalAtoms(), OBAtom::SetHybAndGeom(), OBAtom::SmallestBondAngle(), OBMol::start_kekulize(), and OBAromaticTyper::TraverseCycle().
double GetDistance | ( | int | index | ) |
Referenced by OBBondTyper::AssignFunctionalGroupBonds().
double GetAngle | ( | int | b, | |
int | c | |||
) |
void NewResidue | ( | ) | [inline] |
If no residue has been set for this atom, create a new one.
void AddResidue | ( | OBResidue * | res | ) | [inline] |
Add (set) the residue for this atom.
void DeleteResidue | ( | ) | [inline] |
Delete any residue associated with this atom.
void AddBond | ( | OBBond * | bond | ) | [inline] |
Add a bond to the internal list. Does not update the bond.
Referenced by OBMol::AddBond(), and OBBuilder::Connect().
void InsertBond | ( | OBBondIterator & | i, | |
OBBond * | bond | |||
) | [inline] |
Insert bond
into the internal list at the position from i
Does not modify the bond.
Referenced by OBMol::AddBond().
bool DeleteBond | ( | OBBond * | bond | ) |
Find bond
and remove it from the internal list. Does not update the bond.
void ClearBond | ( | ) | [inline] |
Clear all bonding information in this atom (does not delete them).
bool HtoMethyl | ( | ) |
If this is a hydrogen atom, transform into a methyl group.
bool SetHybAndGeom | ( | int | hyb | ) |
Change the hybridization of this atom and modify the geometry accordingly
void ForceNoH | ( | ) | [inline] |
Mark that atom has no hydrogens attached.
bool HasNoHForced | ( | ) | [inline] |
Referenced by OBMol::AssignSpinMultiplicity().
void ForceImplH | ( | ) | [inline] |
Mark that atom is not hydrogen deficient (For SMILES input)
bool HasImplHForced | ( | ) | [inline] |
Referenced by OBMol::AssignSpinMultiplicity().
unsigned int CountFreeOxygens | ( | ) | const |
Referenced by OBAtom::IsCarboxylOxygen(), OBAtom::IsNitroOxygen(), OBAtom::IsPhosphateOxygen(), and OBAtom::IsSulfateOxygen().
unsigned int ImplicitHydrogenCount | ( | ) | const |
Referenced by OpenBabel::EvalAtomExpr(), OBMol::GetExactMass(), and OBMol::GetMolWt().
unsigned int ExplicitHydrogenCount | ( | bool | ExcludeIsotopes = false |
) | const |
Referenced by OBMol::AssignSpinMultiplicity(), and OpenBabel::EvalAtomExpr().
unsigned int MemberOfRingCount | ( | ) | const |
unsigned int MemberOfRingSize | ( | ) | const |
Referenced by OBAtom::SetHybAndGeom().
unsigned int CountRingBonds | ( | ) | const |
Referenced by OpenBabel::EvalAtomExpr().
double SmallestBondAngle | ( | ) |
double AverageBondAngle | ( | ) |
Referenced by OBBondTyper::AssignFunctionalGroupBonds(), and OBMol::PerceiveBondOrders().
unsigned int BOSum | ( | ) | const |
Referenced by OBMol::ConnectTheDots(), OBRing::GetRootAtom(), and OBMol::PerceiveBondOrders().
unsigned int KBOSum | ( | ) | const |
Referenced by OpenBabel::EvalAtomExpr().
bool HasResidue | ( | ) | [inline] |
bool IsHydrogen | ( | ) | [inline] |
Referenced by OBMol::AddHydrogens(), OBResidueData::AssignBonds(), OBGastChrg::AssignPartialCharges(), OBMol::AssignSpinMultiplicity(), OBMol::ConnectTheDots(), OBMol::DeleteAtom(), OBMol::DeleteHydrogen(), OBMol::DeleteHydrogens(), OBAtom::ExplicitHydrogenCount(), OBMol::FindTorsions(), OBMol::GetExactMass(), OpenBabel::GetHvyBondSum(), OpenBabel::GetHvyValence(), OBAtom::GetHvyValence(), OBMol::GetMolWt(), OBRotorRules::GetRotorIncrements(), OBAtom::HtoMethyl(), OBAtom::IsHbondDonor(), OBAtom::IsHbondDonorH(), OBAtom::IsNonPolarHydrogen(), OBAtom::IsPolarHydrogen(), OBMol::NumHvyAtoms(), OBAromaticTyper::SelectRootAtoms(), and OBAtom::SetHybAndGeom().
bool IsCarbon | ( | ) | [inline] |
Referenced by OBMol::getorden(), OBAtom::IsCarboxylOxygen(), OBMol::IsChiral(), and OBMol::PerceiveKekuleBonds().
bool IsNitrogen | ( | ) | [inline] |
Referenced by OBMol::AddHydrogens(), OpenBabel::ExpandKekule(), OBMol::getorden(), OBRing::GetRootAtom(), OBAtom::IsAmideNitrogen(), OBAtom::IsAromaticNOxide(), OBMol::IsChiral(), OBAtom::IsNitroOxygen(), OBMol::NewPerceiveKekuleBonds(), and OBMol::PerceiveKekuleBonds().
bool IsOxygen | ( | ) | [inline] |
Referenced by OBMol::AddHydrogens(), OBResidueData::AssignBonds(), OBBondTyper::AssignFunctionalGroupBonds(), OBAtom::CountFreeOxygens(), OpenBabel::ExpandKekule(), OBAtom::GetNewBondVector(), OBMol::getorden(), OBRing::GetRootAtom(), OBAtom::IsAromaticNOxide(), OBAtom::IsCarboxylOxygen(), OBAtom::IsNitroOxygen(), OBAtom::IsPhosphateOxygen(), OBAtom::IsSulfateOxygen(), OBMol::NewPerceiveKekuleBonds(), and OBMol::PerceiveKekuleBonds().
bool IsSulfur | ( | ) | [inline] |
Referenced by OBMol::AddHydrogens(), OpenBabel::ExpandKekule(), OBMol::getorden(), OBRing::GetRootAtom(), OBAtom::HasAlphaBetaUnsat(), OBAtom::IsSulfateOxygen(), OBMol::PerceiveKekuleBonds(), and OBMol::start_kekulize().
bool IsPhosphorus | ( | ) | [inline] |
Referenced by OBMol::AddHydrogens(), OBAtom::HasAlphaBetaUnsat(), and OBAtom::IsPhosphateOxygen().
bool IsAromatic | ( | ) | const |
Referenced by OpenBabel::EvalAtomExpr(), OBMol::GetGIVector(), OpenBabel::GetGIVector(), OpenBabel::GetHvyBondSum(), OBAtom::IsAromaticNOxide(), and OpenBabel::KekulePropagate().
bool IsInRing | ( | ) | const |
Referenced by OpenBabel::EvalAtomExpr(), OBAromaticTyper::ExcludeSmallRing(), OBMol::GetGIVector(), OBAtom::IsAxial(), OBAtom::MemberOfRingCount(), OBAtom::MemberOfRingSize(), OBMol::PerceiveBondOrders(), OBAromaticTyper::SelectRootAtoms(), and OBAtom::SetHybAndGeom().
bool IsInRingSize | ( | int | size | ) | const |
Referenced by OpenBabel::EvalAtomExpr(), and OBMol::getorden().
bool IsHeteroatom | ( | ) |
Referenced by OBAtom::GetHeteroValence().
bool IsNotCorH | ( | ) |
bool IsConnected | ( | OBAtom * | a1 | ) |
Referenced by OBMol::ConnectTheDots(), OpenBabel::construct_g_matrix(), OBAromaticTyper::ExcludeSmallRing(), OBAtom::IsOneFour(), OBMolPairIter::OBMolPairIter(), and OBMolPairIter::operator++().
bool IsOneThree | ( | OBAtom * | a1 | ) |
Referenced by OBMolPairIter::OBMolPairIter(), and OBMolPairIter::operator++().
bool IsOneFour | ( | OBAtom * | a1 | ) |
bool IsCarboxylOxygen | ( | ) |
bool IsPhosphateOxygen | ( | ) |
bool IsSulfateOxygen | ( | ) |
bool IsNitroOxygen | ( | ) |
bool IsAmideNitrogen | ( | ) |
Returns true if nitrogen is part of an amide.
Referenced by OBMol::getorden().
bool IsPolarHydrogen | ( | ) |
bool IsNonPolarHydrogen | ( | ) |
Referenced by OBMol::DeleteNonPolarHydrogens().
bool IsAromaticNOxide | ( | ) |
bool IsChiral | ( | ) |
Referenced by OpenBabel::EvalAtomExpr(), OBMol::FindChiralCenters(), and OBMol::IsChiral().
bool IsAxial | ( | ) |
bool IsClockwise | ( | ) | [inline] |
Referenced by OpenBabel::CorrectChirality(), and OpenBabel::EvalAtomExpr().
bool IsAntiClockwise | ( | ) | [inline] |
Referenced by OpenBabel::CorrectChirality(), and OpenBabel::EvalAtomExpr().
bool IsPositiveStereo | ( | ) | [inline] |
bool IsNegativeStereo | ( | ) | [inline] |
bool HasChiralitySpecified | ( | ) | [inline] |
Referenced by OpenBabel::CorrectChirality(), and OpenBabel::EvalAtomExpr().
bool HasChiralVolume | ( | ) | [inline] |
bool IsHbondAcceptor | ( | ) |
bool IsHbondDonor | ( | ) |
bool IsHbondDonorH | ( | ) |
bool HasAlphaBetaUnsat | ( | bool | includePandS = true |
) |
includePandS | Whether to include phosphorus and sulfur neighbors in this determination (or to exclude them) |
'*'
\
a=b
Referenced by OBAtom::GetNewBondVector().
bool HasBondOfOrder | ( | unsigned int | bo | ) |
bo
Referenced by OBMol::PerceiveBondOrders().
int CountBondsOfOrder | ( | unsigned int | bo | ) |
bo
bool HasNonSingleBond | ( | ) |
Referenced by OBMol::PerceiveBondOrders().
bool HasSingleBond | ( | ) | [inline] |
bool HasDoubleBond | ( | ) | [inline] |
Referenced by OBBondTyper::AssignFunctionalGroupBonds(), and OpenBabel::FindConjugatedEZBonds().
bool HasAromaticBond | ( | ) | [inline] |
bool MatchesSMARTS | ( | const char * | pattern | ) |
virtual OBBase* DoTransformations | ( | const std::map< std::string, std::string > * | ) | [inline, virtual, inherited] |
Perform a set of transformations specified by the user
Typically these are program options to filter or modify an object For example, see OBMol::DoTransformations() and OBMol::ClassDescription()
Reimplemented in OBMol.
static const char* ClassDescription | ( | ) | [inline, static, inherited] |
Reimplemented in OBMol, and OBReaction.
T* CastAndClear | ( | bool | clear = true |
) | [inline, inherited] |
By default clears the object. Called from ReadMolecule of most format classes.
bool HasData | ( | const std::string & | s | ) | [inherited] |
Referenced by OBMol::AddAtom(), OBMol::FindAngles(), OBMol::FindSSSR(), OBMol::FindTorsions(), OBForceField::GetConformers(), OBForceField::GetCoordinates(), OBMol::GetEnergies(), OBMol::GetEnergy(), OBMol::GetSSSR(), OBBase::HasData(), OBDescriptor::MatchPairData(), OBMol::NewAtom(), OBMol::operator=(), and OBMol::SetEnergies().
bool HasData | ( | const char * | s | ) | [inherited] |
bool HasData | ( | const unsigned int | type | ) | [inherited] |
void DeleteData | ( | unsigned int | type | ) | [inherited] |
Delete any data matching the given OBGenericDataType.
Referenced by OBMol::AddAtom(), OBMol::BeginModify(), OBBuilder::CorrectStereoBonds(), OBDescriptor::DeleteProperties(), OBMol::FindSSSR(), OBMol::NewAtom(), and OBForceField::Setup().
void DeleteData | ( | OBGenericData * | gd | ) | [inherited] |
Delete the given generic data from this object.
void DeleteData | ( | std::vector< OBGenericData * > & | vg | ) | [inherited] |
Delete all of the given generic data from this object.
bool DeleteData | ( | const std::string & | s | ) | [inherited] |
Deletes the generic data with the specified attribute, returning false if not found.
void SetData | ( | OBGenericData * | d | ) | [inline, inherited] |
Adds a data object; does nothing if d==NULL.
Referenced by OBMol::AddBond(), OBGastChrg::AssignPartialCharges(), OpenBabel::CalcSignedVolume(), OBMol::DoTransformations(), OBAtom::Duplicate(), OBMol::FindAngles(), OBMol::FindSSSR(), OBMol::FindTorsions(), OBForceField::GetConformers(), OBForceField::GetCoordinates(), OBMol::GetEnergies(), OBMol::GetEnergy(), OBMol::GetFormula(), OBMol::GetNextFragment(), OBMol::GetSSSR(), OBMoleculeFormat::MakeCombinedMolecule(), OBMol::operator=(), OBDescriptor::PredictAndSave(), OBMol::SetEnergies(), and OBMol::SetFormula().
void CloneData | ( | OBGenericData * | d | ) | [inherited] |
Adds a copy of a data object; does nothing if d == NULL
unsigned int DataSize | ( | ) | const [inline, inherited] |
OBGenericData * GetData | ( | const unsigned int | type | ) | [inherited] |
Referenced by OpenBabel::CalcSignedVolume(), OpenBabel::CorrectChirality(), OBDescriptor::FilterCompare(), OBForceField::GetConformers(), OBForceField::GetCoordinates(), OBMol::GetNextFragment(), OBDescriptor::GetValues(), OBMoleculeFormat::MakeCombinedMolecule(), OBMolAngleIter::OBMolAngleIter(), OBMolRingIter::OBMolRingIter(), OBMolTorsionIter::OBMolTorsionIter(), OBMol::operator=(), and OBDescriptor::PredictAndSave().
OBGenericData * GetData | ( | const std::string & | s | ) | [inherited] |
the value given an attribute name
OBGenericData * GetData | ( | const char * | s | ) | [inherited] |
the value given an attribute name
std::vector<OBGenericData*>& GetData | ( | ) | [inline, inherited] |
Referenced by OBMol::BeginModify(), OBMol::DoTransformations(), OBMol::FindSSSR(), OBBase::GetData(), OBMol::GetEnergies(), OBMol::GetEnergy(), OBMol::GetFormula(), OBMol::GetSSSR(), OBMol::SetEnergies(), and OBMol::SetFormula().
std::vector< OBGenericData * > GetData | ( | DataOrigin | source | ) | [inherited] |
std::vector< OBGenericData * > GetAllData | ( | const unsigned int | type | ) | [inherited] |
OBDataIterator BeginData | ( | ) | [inline, inherited] |
Referenced by OBMol::AddAtom(), OBAtom::Duplicate(), OBMoleculeFormat::MakeCombinedMolecule(), OBMol::NewAtom(), and OBMol::operator=().
OBDataIterator EndData | ( | ) | [inline, inherited] |
Referenced by OBMol::AddAtom(), OBAtom::Duplicate(), OBMoleculeFormat::MakeCombinedMolecule(), OBMol::NewAtom(), and OBMol::operator=().
char _ele [protected] |
atomic number (type char to minimize space -- allows for 0..255 elements)
Referenced by OBAtom::Clear(), OBAtom::Duplicate(), OBAtom::GetAtomicMass(), OBAtom::GetExactMass(), OBAtom::GetType(), OBAtom::IsHbondAcceptor(), OBAtom::IsHbondDonor(), OBAtom::SetIsotope(), and OBAtom::SetType().
char _impval [protected] |
implicit valence
Referenced by OBAtom::Clear(), OBAtom::GetImplicitValence(), and OBAtom::ImplicitHydrogenCount().
char _type[6] [protected] |
atomic type
Referenced by OBAtom::Clear(), OBAtom::Duplicate(), OBAtom::GetType(), and OBAtom::SetType().
short _fcharge [protected] |
unsigned short _isotope [protected] |
isotope (0 = most abundant)
Referenced by OBAtom::Clear(), OBAtom::Duplicate(), OBAtom::GetAtomicMass(), OBAtom::GetExactMass(), OBAtom::GetType(), OBAtom::SetIsotope(), and OBAtom::SetType().
short _spinmultiplicity [protected] |
atomic spin, e.g., 2 for radical 1 or 3 for carbene
Referenced by OBAtom::Clear(), and OBAtom::Duplicate().
unsigned int _idx [protected] |
bonds to this atom -- assumed to be one of the endpoints
Referenced by OBAtom::BeginBond(), OBAtom::BeginNbrAtom(), OBAtom::Clear(), OBAtom::DeleteBond(), OBAtom::NextBond(), and OBAtom::NextNbrAtom().
unsigned int _cidx [protected] |
index into coordinate array
Referenced by OBAtom::Clear(), OBAtom::GetVector(), and OBAtom::SetVector().
unsigned short _hyb [protected] |
unsigned short _flags [protected] |
double _pcharge [protected] |
double** _c [protected] |
coordinate array in double*
Referenced by OpenBabel::CartesianToInternal(), OBAtom::Clear(), OBAtom::GetVector(), and OBAtom::SetVector().
parent residue (if applicable)
Referenced by OBAtom::Clear(), OBAtom::Duplicate(), OBAtom::GetResidue(), and OBAtom::~OBAtom().
bool Visit |
Used internally by graph traversal algorithms.
std::vector<OBGenericData*> _vdata [protected, inherited] |
Custom data.
Referenced by OBBase::Clear(), OBBase::CloneData(), OBBase::DeleteData(), OBAtom::Duplicate(), OBBase::GetAllData(), OBBase::GetData(), OBBase::HasData(), OBBond::OBBond(), OBMol::OBMol(), and OBResidue::OBResidue().