OpenBabel::OBGenericDataType Namespace Reference

Classification of data stored via OBGenericData class and subclasses. More...


enum  {
  UndefinedData = 0, PairData = 1, EnergyData = 2, CommentData = 3,
  ConformerData = 4, ExternalBondData = 5, RotamerList = 6, VirtualBondData = 7,
  RingData = 8, TorsionData = 9, AngleData = 10, SerialNums = 11,
  UnitCell = 12, SpinData = 13, ChargeData = 14, SymmetryData = 15,
  ChiralData = 16, OccupationData = 17, DensityData = 18, ElectronicData = 19,
  VibrationData = 20, RotationData = 21, NuclearData = 22, SetData = 23,
  GridData = 24, VectorData = 25, MatrixData = 26, CustomData0 = 16384,
  CustomData1 = 16385, CustomData2 = 16386, CustomData3 = 16387, CustomData4 = 16388,
  CustomData5 = 16389, CustomData6 = 16390, CustomData7 = 16391, CustomData8 = 16392,
  CustomData9 = 16393, CustomData10 = 16394, CustomData11 = 16395, CustomData12 = 16396,
  CustomData13 = 16397, CustomData14 = 16398, CustomData15 = 16399

Detailed Description

Classification of data stored via OBGenericData class and subclasses.

OBGenericDataType can be used as a faster, direct access to a particular category instead of the slower access via GetData(std::string), which must loop through all data to find a match with the supplied key. It is implemented as a set of unsigned integer constants for maximum flexibility and future expansion.

CustomData0 through CustomData15 are data slots that are not used in OpenBabel directly and are meant for use in derivative programs. Macro definitions can be used to define what each data slot is used in your code.

Enumeration Type Documentation

anonymous enum

UndefinedData  Unknown data type (default).
PairData  Arbitrary key/value data, i.e., OBPairData.
EnergyData  Energetics data (e.g., total energy, heat of formation, etc.).
CommentData  Storing text comments (one per molecule, atom, bond, etc.) (for other data, e.g., author, keyword, ... use OBPairData).
ConformerData  Arbitrary information about conformers, i.e., OBConformerData.
ExternalBondData  Bond data external to OpenBabel, i.e., OBExternalBond, OBExternalBondData.
RotamerList  Information for generating & manipulating rotamers, i.e. OBRotamerList.
VirtualBondData  Info. for storing bonds to atoms yet to be added, i.e. OBVirtualBond.
RingData  Information on rings in a molecule, i.e., OBRingData.
TorsionData  Information about torsion/dihedral angles, i.e., OBTorsionData and OBTorsion.
AngleData  Bond angles in a molecule, i.e., OBAngle, OBAngleData.
SerialNums  Residue serial numbers.
UnitCell  Crystallographic unit cell data, i.e., OBUnitCell.
SpinData  Spin data, including NMR, atomic and molecular spin, etc.
ChargeData  Arbitrary partial and total charges, dipole moments, etc.
SymmetryData  Symmetry data -- point and space groups, transforms, etc. i.e., OBSymmetryData.
ChiralData  Arbitrary chiral information (atom, bond, molecule, etc.) i.e., OBChiralData.
OccupationData  Atomic and molecular occupation data.
DensityData  Density (cube) data and surfaces.
ElectronicData  Electronic levels, redox states, orbitals, etc.
VibrationData  Vibrational modes, frequencies, etc.
RotationData  Rotational energy information.
NuclearData  Nuclear transitions (e.g., decay, capture, fission, fusion).
SetData  Set Data (a set of OBGenericData).
GridData  Grid Data (e.g., 3D grids of data a.k.a. cubes).
VectorData  Vector Data (i.e., one vector like a dipole moment).
MatrixData  Matrix data (i.e., a 3x3 matrix like a rotation or quadrupole moment).
CustomData0  Custom (user-defined data).