SBMStructuralModelNodeAtom Class Reference

This class describes an atom in a structural model.

Public Types

enum  Hybridization {
  Hybridization::None,
  Hybridization::SP,
  Hybridization::SP2,
  Hybridization::SP3,
  Hybridization::SP3D,
  Hybridization::SP3D2,
  Hybridization::Unknown
}
 
enum  Geometry {
  Geometry::Undefined,
  Geometry::Linear,
  Geometry::Bent,
  Geometry::TrigonalPlanar,
  Geometry::TrigonalPyramidal,
  Geometry::TShaped,
  Geometry::Tetrahedral,
  Geometry::SquarePlanar,
  Geometry::Seesaw,
  Geometry::TrigonalBipyramidal,
  Geometry::SquarePyramidal,
  Geometry::PentagonalPlanar,
  Geometry::Octahedral,
  Geometry::TrigonalPrismatic,
  Geometry::PentagonalPyramidal,
  Geometry::PentagonalBipyramidal,
  Geometry::CappedOctahedral,
  Geometry::CappedTrigonalPrismatic,
  Geometry::SquareAntiprismatic,
  Geometry::Dodecahedral,
  Geometry::BicappedTrigonalPrismatic,
  Geometry::TricappedTrigonalPrismatic,
  Geometry::CappedSquareAntiprismatic
}
 
- Public Types inherited from SBDDataGraphNode
enum  Type {
  Undefined,
  StructuralModel,
  StructuralModelNode,
  StructuralModelConformation,
  Conformation,
  StructuralModelPath,
  Path,
  StructuralModelNodeGroup,
  StructuralGroup,
  StructuralModelNodeRoot,
  Root,
  StructuralModelNodeParticle,
  StructuralParticle,
  StructuralModelNodeAtom,
  Atom,
  StructuralModelNodePseudoAtom,
  PseudoAtom,
  StructuralModelNodeBond,
  Bond,
  StructuralModelNodePseudoBond,
  PseudoBond,
  StructuralModelNodeHydrogenBond,
  HydrogenBond,
  StructuralModelNodeHydrogenBondGroup,
  HydrogenBondGroup,
  StructuralModelNodeResidue,
  Residue,
  StructuralModelNodeSegment,
  Segment,
  StructuralModelNodeProtein,
  Protein,
  StructuralModelNodeChain,
  Chain,
  StructuralModelNodeMolecule,
  Molecule,
  StructuralModelNodeBackbone,
  Backbone,
  StructuralModelNodeSideChain,
  SideChain,
  VisualModel,
  VisualModelMesh,
  Mesh,
  DynamicalModel,
  DynamicalModelParticleSystem,
  ParticleSystem,
  DynamicalModelRigidBodySystem,
  RigidBodySystem,
  DynamicalModelArticulatedBodySystem,
  ArticulatedBodySystem,
  DynamicalModelNode,
  DynamicalNode,
  DynamicalModelNodeGroup,
  DynamicalGroup,
  DynamicalModelNodeRoot,
  DynamicalRoot,
  DynamicalModelNodeParticle,
  DynamicalParticle,
  DynamicalModelNodeRigidBody,
  RigidBody,
  DynamicalModelNodeArticulatedBody,
  ArticulatedBody,
  InteractionModel,
  InteractionModelParticleSystem,
  InteractionModelRigidBodySystem,
  InteractionModelArticulatedBodySystem,
  PropertyModel,
  PropertyModelFunction,
  Simulator,
  SimulatorParticleSystem,
  SimulatorRigidBodySystem,
  SimulatorArticulatedBodySystem,
  StateUpdater,
  StateUpdaterParticleSystem,
  StateUpdaterRigidBodySystem,
  StateUpdaterArticulatedBodySystem,
  DocumentManager,
  Document,
  Folder,
  Camera,
  Label,
  Note,
  Animation,
  Presentation,
  DataGraphNodeGroup,
  NodeGroup,
  Controller,
  ControllerNode,
  Asset
}
 The type of the data graph node. More...
 
enum  RenderingPass {
  RenderingPass::Setup,
  RenderingPass::OpaqueGeometry,
  RenderingPass::SelectableGeometry,
  RenderingPass::ShadowingGeometry,
  RenderingPass::TransparentGeometry,
  RenderingPass::Interface,
  RenderingPass::Text
}
 The rendering pass. More...
 

Constructors and destructors

 SBMStructuralModelNodeAtom ()
 
 SBMStructuralModelNodeAtom (SBElement::Type element)
 Constructs an atom (default position = (0,0,0))
 
 SBMStructuralModelNodeAtom (SBElement::Type element, const SBQuantity::length &x, const SBQuantity::length &y, const SBQuantity::length &z)
 Constructs an atom at position = (x,y,z)
 
 SBMStructuralModelNodeAtom (SBElement::Type element, SBPosition3 const &p)
 Constructs an atom at position p.
 
 SBMStructuralModelNodeAtom (SBElement::Type element, std::string &n, SBPosition3 const &p)
 Constructs an atom with name n at position p.
 
virtual ~SBMStructuralModelNodeAtom ()
 Destructs the atom.
 

Serialization

bool isSerializable () const
 Returns true.
 
virtual void serialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) const
 Serializes the atom.
 
virtual void unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0))
 Unserializes the atom.
 

Topology

SBPointerList< SBBond > const * getBondList () const
 Returns the bond list.
 
SBBondgetBondTo (SBMStructuralModelNodeAtom *atom) const
 Returns the bond to an atom (0 if no bond)
 
unsigned int getNumberOfBonds () const
 Returns the number of bonds without taking into account the bond order (NB: a double bond is considered as one bond)
 
SBQuantity::dimensionless getCurrentValence () const
 Returns the current valence, i.e. the sum of the orders of the bonds connected to the atom, rounded to the closest integer.
 
SBQuantity::dimensionless getExpectedValence () const
 Returns the expected valence of the atom based on its formal charge and its number of bonds (based on the MDL valence model)
 
void getBondedAtoms (SBNodeIndexer &nodeIndexer) const
 Gets all bonded atoms.
 
void getBondedAtoms (SBNodeIndexer &nodeIndexer, const SBElement::Type element) const
 Gets all bonded atoms of type element.
 
void getBondedHeavyAtoms (SBNodeIndexer &nodeIndexer) const
 Gets all bonded heavy atoms (non-Hydrogens)
 
unsigned int getNumberOfBondedAtoms (const SBElement::Type element) const
 Returns the number of bonded atoms with element type element.
 
unsigned int getNumberOfBondedAtoms () const
 Returns the number of bonded atoms.
 
unsigned int getNumberOfBondedHeavyAtoms () const
 Returns the number of bonded heavy atoms.
 
unsigned int getNumberOfBondedCarbons () const
 Returns the number of bonded carbons.
 
unsigned int getNumberOfBondedHydrogens () const
 Returns the number of bonded hydrogens.
 
unsigned int getNumberOfBondedOxygens () const
 Returns the number of bonded oxygens.
 
unsigned int getNumberOfBondedNitrogens () const
 Returns the number of bonded nitrogens.
 
unsigned int getNumberOfBondedSulfurs () const
 Returns the number of bonded sulfurs.
 
void getHydrogens (SBNodeIndexer &nodeIndexer) const
 Gets all bonded hydrogens.
 
unsigned int addHydrogens ()
 Adds hydrogens and returns the number of added hydrogens. More...
 
unsigned int removeHydrogens ()
 Removes the hydrogens bonded to the atom and returns the number of removed hydrogens.
 
void getNewBondDirections (SBVector< SBVector3 > &bondDirectionVector, unsigned int numberOfBonds, bool includeExistingHydrogens=false)
 Generates directions that numberOfBonds new neighboring bonds would have.
 
void getConnectedComponent (SBNodeIndexer &nodeIndexer) const
 Gets all atoms in the connected component containing the atom.
 
bool isPlanar () const
 Returns true if the atom with atoms bonded to it are in the same plane.
 
bool isCarboxylOxygen () const
 Returns true for an Oxygen atom in a carboxyl group (C(=O)OH) More...
 
bool isThiocarboxylOxygen () const
 Returns true for an Oxygen atom in a thiocarboxyl group (C(=S)OH or C(=O)SH) More...
 
bool isNitroOxygen () const
 Returns true for an Oxygen atom in a nitro group (-NO2) More...
 
bool isSulfoneOxygen () const
 Returns true for an Oxygen atom in a sulfone (R1-SO2-R2) More...
 
bool isHydrogenBondAcceptor () const
 Returns true if the atom is an H-Bond acceptor (N, O, S, F) More...
 
bool isHydrogenBondDonor () const
 Returns true if the atom is an H-Bond donor (N, O, S, F) More...
 
bool isDonorborneHydrogen () const
 Returns true if the atom is a hydrogen connected to an H-Bond donor. More...
 
bool isAttachedToHydrogenBondDonor () const
 Returns true if the atom is connected to an H-Bond donor. More...
 
virtual SBMStructuralModelNodeAtomclone ()
 Returns a copy of the node and its descendants.
 

Identity

virtual SBDDataGraphNode::Type getType () const
 Returns the node type (returns SBNode::Atom)
 
virtual SBElement::Type getElementType () const
 Returns the atom's element type.
 
virtual void setElementType (SBElement::Type e)
 Sets the atom's element type.
 
virtual std::string getElementName () const
 Returns the atom's element name.
 
virtual std::string getElementSymbol () const
 Returns the atom's element symbol.
 
std::string getPeriod () const
 Returns the atom's element period.
 
unsigned int getGroup () const
 Returns the atom's element group.
 
std::string getBlock () const
 Returns the atom's element block.
 
SBQuantity::mass getAtomicWeight () const
 Returns the atom's element atomic weight.
 
SBQuantity::length getCovalentRadius () const
 Returns the atom's element covalent radius.
 
SBQuantity::length getVanDerWaalsRadius () const
 Returns the atom's element van der Waals radius.
 
SBQuantity::dimensionless getElectronegativity () const
 Returns the atom's element electronegativity.
 
SBElement::MetalSubcategory getMetalSubcategory () const
 Returns the atom's subcategory type in the metal–metalloid–nonmetal trend.
 
std::string getMetalSubcategoryString () const
 Returns the string representation of the atom's subcategory type in the metal–metalloid–nonmetal trend.
 
bool isMetal () const
 Returns true if the atom is metal.
 
bool isAlkaliMetal () const
 Returns true if the atom is alkali metal.
 
bool isAlkalineEarthMetal () const
 Returns true if the atom is alkaline earth metal.
 
bool isLanthanide () const
 Returns true if the atom is lanthanide metal.
 
bool isActinide () const
 Returns true if the atom is actinide metal.
 
bool isTransitionMetal () const
 Returns true if the atom is transition metal.
 
bool isPosttransitionMetal () const
 Returns true if the atom is posttransition metal.
 
bool isMetalloid () const
 Returns true if the atom is metalloid.
 
bool isNobleGas () const
 Returns true if the atom is noble gas.
 
bool isReactiveNonmetal () const
 Returns true if the atom is reactive nonmetal.
 
bool isDiatomicNonmetal () const
 Returns true if the atom is diatomic nonmetal.
 
bool isPolyatomicNonmetal () const
 Returns true if the atom is polyatomic nonmetal.
 
bool isHalogen () const
 Returns true if the atom is halogen.
 

Hierarchy

bool isInMolecule () const
 Returns true when the atom is in a molecule.
 
SBMStructuralModelNodeMoleculegetMolecule () const
 Returns a pointer to the molecule.
 
std::string getMoleculeName () const
 Returns the atom's molecule name.
 
bool isInChain () const
 Returns true when the atom is in a chain.
 
SBMStructuralModelNodeChaingetChain () const
 Returns a pointer to the chain.
 
std::string getChainName () const
 Returns the atom's chain name.
 
bool hasChainID () const
 Returns true when the atom's chain ID is set. The chain ID is used to separate chains with the same name but divided into 2, e.g. with TER record. More...
 
int getChainID () const
 Returns the atom's chain ID. More...
 
std::string getChainIDString () const
 Returns the atom's chain ID string. More...
 
bool isInSegment () const
 Returns true when the atom is in a segment.
 
SBMStructuralModelNodeSegmentgetSegment () const
 Returns a pointer to the segment.
 
std::string getSegmentName () const
 Returns the atom's segment name.
 
bool isInSubstructure () const
 Returns true when the atom is in a substructure. More...
 
SBMStructuralModelNodeGroupgetSubstructure () const
 Returns a pointer to the substructure. More...
 
std::string getSubstructureName () const
 Returns the atom's substructure name. More...
 
bool hasSubstructureSequenceNumber () const
 Returns true when the atom's substructure sequence number is set. More...
 
int getSubstructureSequenceNumber () const
 Returns the atom's substructure sequence number. More...
 
std::string getSubstructureSequenceNumberString () const
 Returns the atom's substructure sequence number string. More...
 
bool isInResidue () const
 Returns true when the atom is in a residue.
 
SBMStructuralModelNodeResiduegetResidue () const
 Returns a pointer to the residue.
 
std::string getResidueName () const
 Returns the atom's residue name.
 
std::string getResidueTypeString () const
 Returns the atom's residue type string. More...
 
bool hasResidueSequenceNumber () const
 Returns true when the atom's residue sequence number is set. More...
 
int getResidueSequenceNumber () const
 Returns the atom's residue sequence number. More...
 
std::string getResidueSequenceNumberString () const
 Returns the atom's residue sequence number string. More...
 
bool isInAminoAcid () const
 Returns true when the atom is in an amino acid residue. More...
 
bool isInNucleicAcid () const
 Returns true when the atom is in a nucleic acid residue. More...
 
bool isInBackbone () const
 Returns true when the atom is in a backbone. More...
 
SBMStructuralModelNodeBackbonegetBackbone () const
 Returns a pointer to the backbone. More...
 
bool isInSideChain () const
 Returns true when the atom is in a side chain. More...
 
SBMStructuralModelNodeSideChaingetSideChain () const
 Returns a pointer to the side chain. More...
 
bool isFromAminoAcidBackbone () const
 Returns true when the atom is from an amino-acid backbone. More...
 
bool isFromNucleicAcidBackbone () const
 Returns true when the atom is from a nucleic acid backbone. More...
 
bool hasAminoAcidBackboneAtomName () const
 Returns true when the atom's name corresponds to one of the amino-acid backbone atoms. More...
 
bool hasNucleicAcidBackboneAtomName () const
 Returns true when the atom's name corresponds to one of the nucleic acid backbone atoms. More...
 

Properties

bool hasName () const
 Returns true when the atom's name is set.
 
virtual std::string const & getName () const
 Returns the atom's full name (e.g. CA for an alpha carbon)
 
virtual void setName (const std::string &name)
 Sets the atom's full name.
 
void clearName ()
 Clears the atom's full name.
 
bool hasAltLocation () const
 Returns true when the atom's alternate location is set.
 
char const & getAltLocation () const
 Returns the atom's alternate location.
 
void setAltLocation (const char &altLocation)
 Sets the atom's alternate location.
 
void clearAltLocation ()
 Clears the atom's alternate location.
 
bool hasInsertionCode () const
 Returns true when the atom's insertion code is set.
 
char const & getInsertionCode () const
 Returns the atom's insertion code.
 
void setInsertionCode (const char &insertionCode)
 Sets the atom's insertion code.
 
void clearInsertionCode ()
 Clears the atom's insertion code.
 
bool hasSerialNumber () const
 Returns true when the atom's serial number is set.
 
int const & getSerialNumber () const
 Returns the atom's serial number.
 
void setSerialNumber (const int &serialNumber)
 Sets the atom's serial number.
 
void clearSerialNumber ()
 Clears the atom's serial number.
 
bool hasOccupancy () const
 Returns true when the atom's occupancy is set.
 
SBQuantity::dimensionless const & getOccupancy () const
 Returns the atom's occupancy.
 
void setOccupancy (const SBQuantity::dimensionless &occupancy)
 Sets the atom's occupancy.
 
void clearOccupancy ()
 Clears the atom's occupancy.
 
bool hasRecordType () const
 Returns true when the atom's record type is set.
 
char *const & getRecordType () const
 Returns the atom's record type.
 
unsigned int getRecordTypeSize () const
 Returns the atom's record type size.
 
void setRecordType (char *const &recordType, int const &size)
 Sets the atom's record type.
 
void clearRecordType ()
 Clears the atom's record type.
 
bool hasTemperatureFactor () const
 Returns true when the atom's temperature factor is set.
 
double const & getTemperatureFactor () const
 Returns the atom's temperature factor.
 
void setTemperatureFactor (const double &temperatureFactor)
 Sets the atom's temperature factor.
 
void clearTemperatureFactor ()
 Clears the atom's temperature factor.
 
bool hasPartialCharge () const
 Returns true when the atom's partial charge is set.
 
float const & getPartialCharge () const
 Returns the atom's partial charge.
 
void setPartialCharge (const float &partialCharge)
 Sets the atom's partial charge.
 
void clearPartialCharge ()
 Clears the atom's partial charge.
 
bool hasFormalCharge () const
 Returns true when the atom's formal charge is set.
 
int const & getFormalCharge () const
 Returns the atom's formal charge.
 
void setFormalCharge (const int &formalCharge)
 Sets the atom's formal charge.
 
void clearFormalCharge ()
 Clears the atom's formal charge.
 
bool hasComment () const
 Returns true when the atom's comment is set.
 
char *const & getComment () const
 Returns the atom's comment.
 
unsigned int getCommentSize () const
 Returns the atom's comment size.
 
void setComment (char *const &comment, int const &size)
 Sets the atom's comment.
 
void clearComment ()
 Clears the atom's comment.
 
bool hasAnisotropicTFactors () const
 Returns true when the atom's anisotropic temperature factors are set.
 
std::vector< int > const & getAnisotropicTFactors () const
 Returns the atom's anisotropic temperature factors.
 
void setAnisotropicTFactors (const std::vector< int > &ATF)
 Sets the atom's anisotropic temperature factors.
 
void clearAnisotropicTFactors ()
 Clears the atom's anisotropic temperature factors.
 
bool hasSYBYLType () const
 Returns true when the SYBYL atom's type is set.
 
char *const & getSYBYLType () const
 Returns the SYBYL atom's type.
 
unsigned int getSYBYLTypeSize () const
 Returns the SYBYL atom's type size.
 
void setSYBYLType (char *const &SYBYLType, int const &size)
 Sets the SYBYL atom's type.
 
void clearSYBYLType ()
 Clears the SYBYL atom's type.
 
bool hasStatusBit () const
 Returns true when the atom's status bit is set.
 
char *const & getStatusBit () const
 Returns the atom's status bit.
 
unsigned int getStatusBitSize () const
 Returns the atom's status bit size.
 
void setStatusBit (char *const &statusBit, int const &size)
 Sets the atom's status bit.
 
void clearStatusBit ()
 Clears the atom's status bit.
 
bool hasHybridization () const
 Returns true when the atom's hybridization is set.
 
Hybridization const & getHybridization () const
 Returns the atom's hybridization.
 
void setHybridization (const Hybridization &hybridization)
 Sets the atom's hybridization.
 
void clearHybridization ()
 Clears the atom's hybridization.
 
std::string getHybridizationString () const
 Returns the hybridization as a string.
 
Hybridization perceiveHybridization ()
 Perceives, sets and returns the atom's hybridization.
 
bool hasGeometry () const
 Returns true when the atom's geometry is set.
 
Geometry const & getGeometry () const
 Returns the atom's geometry.
 
void setGeometry (const Geometry &geometry)
 Sets the atom's geometry.
 
void clearGeometry ()
 Clears the atom's geometry.
 
std::string getGeometryString () const
 Returns the geometry as a string.
 
bool hasOxidationState () const
 Returns true when the atom's oxidation state is set.
 
int const & getOxidationState () const
 Returns the atom's oxidation state.
 
void setOxidationState (const int &oxidationState)
 Sets the atom's oxidation state.
 
void clearOxidationState ()
 Clears the atom's oxidation state.
 
bool hasResonance () const
 Returns true when the atom's resonance is set.
 
bool const & getResonance () const
 Returns the atom's resonance (true if resonant, false else)
 
void setResonance (const bool &resonance)
 Sets the atom's resonance.
 
void clearResonance ()
 Clears the atom's resonance.
 
bool hasAromaticity () const
 Returns true when the atom's aromaticity is set.
 
bool const & getAromaticity () const
 Returns the atom's aromaticity (true if aromatic, false else)
 
void setAromaticity (const bool &aromaticity)
 Sets the atom's aromaticity.
 
void clearAromaticity ()
 Clears the atom's aromaticity.
 
bool hasWaterFlag () const
 Returns true when the atom's water flag is set.
 
bool const & getWaterFlag () const
 Returns the atom's water flag (true if the atom is a water atom, false else)
 
void setWaterFlag (const bool &water)
 Sets the atom's water flag.
 
void clearWaterFlag ()
 Clears the atom's water flag.
 
bool hasCustomType () const
 Returns true when the atom's custom type is set.
 
int const & getCustomType () const
 Returns the atom's custom type.
 
void setCustomType (const int &water)
 Sets the atom's custom type.
 
void clearCustomType ()
 Clears the atom's custom type.
 
static std::string getHybridizationString (Hybridization hybridization)
 Returns the hybridization as a string.
 
static std::string getGeometryString (Geometry geometry)
 Returns the geometry as a string.
 

Information

virtual std::string getHierarchyString (const std::string &separator=" / ", bool includeNodeType=false) const
 Returns a string with hierarchical information on the atom and its parents names. More...
 

Statistics

unsigned int getNumberOfAtoms ()
 Returns the number of atoms.
 
unsigned int getNumberOfCarbons ()
 Returns the number of carbons.
 
unsigned int getNumberOfHydrogens ()
 Returns the number of hydrogens.
 
unsigned int getNumberOfNitrogens ()
 Returns the number of nitrogens.
 
unsigned int getNumberOfOxygens ()
 Returns the number of oxygens.
 
unsigned int getNumberOfSulfurs ()
 Returns the number of sulfurs.
 
unsigned int getNumberOfOtherAtoms ()
 Returns the number of other atoms.
 
int getSumOfFormalCharges ()
 Returns the sum of formal charges.
 
float getSumOfPartialCharges ()
 Returns the sum of partial charges.
 
SBQuantity::mass getMolecularWeight ()
 Returns the molecular weight.
 

Debugging

virtual void print (unsigned int offset=0) const
 Prints debugging information.
 
 SB_NODE_GETTER_0 (, SBElement::Type, GetElementType)
 
 SB_NODE_GETTER_0 (, std::string, GetElementName)
 
 SB_NODE_GETTER_0 (, std::string, GetElementSymbol)
 
 SB_NODE_GETTER_0 (, std::string, GetPeriod)
 
 SB_NODE_GETTER_0 (, unsigned int, GetGroup)
 
 SB_NODE_GETTER_0 (, std::string, GetBlock)
 
 SB_NODE_GETTER_0 (, SBQuantity::mass, GetAtomicWeight)
 
 SB_NODE_GETTER_0 (, SBQuantity::length, GetCovalentRadius)
 
 SB_NODE_GETTER_0 (, SBQuantity::length, GetVanDerWaalsRadius)
 
 SB_NODE_GETTER_0 (, SBQuantity::dimensionless, GetElectronegativity)
 
 SB_NODE_GETTER_0 (, SBElement::MetalSubcategory, GetMetalSubcategory)
 
 SB_NODE_GETTER_0 (, std::string, GetName)
 
 SB_NODE_GETTER_0 (, char, GetAltLocation)
 
 SB_NODE_GETTER_0 (, std::string, GetChainName)
 
 SB_NODE_GETTER_0 (, char, GetInsertionCode)
 
 SB_NODE_GETTER_0 (, int, GetSerialNumber)
 
 SB_NODE_GETTER_0 (, SBQuantity::dimensionless, GetOccupancy)
 
 SB_NODE_GETTER_0 (, std::string, GetRecordType)
 
 SB_NODE_GETTER_0 (, unsigned int, GetRecordTypeSize)
 
 SB_NODE_GETTER_0 (, std::string, GetResidueName)
 
 SB_NODE_GETTER_0 (, std::string, GetResidueTypeString)
 
 SB_NODE_GETTER_0 (, int, GetResidueSequenceNumber)
 
 SB_NODE_GETTER_0 (, std::string, GetSegmentName)
 
 SB_NODE_GETTER_0 (, double, GetTemperatureFactor)
 
 SB_NODE_GETTER_0 (, float, GetPartialCharge)
 
 SB_NODE_GETTER_0 (, int, GetFormalCharge)
 
 SB_NODE_GETTER_0 (, std::string, GetComment)
 
 SB_NODE_GETTER_0 (, unsigned int, GetCommentSize)
 
 SB_NODE_GETTER_0 (, std::vector< int >, GetAnisotropicTFactors)
 
 SB_NODE_GETTER_0 (, std::string, GetSYBYLType)
 
 SB_NODE_GETTER_0 (, unsigned int, GetSYBYLTypeSize)
 
 SB_NODE_GETTER_0 (, std::string, GetStatusBit)
 
 SB_NODE_GETTER_0 (, unsigned int, GetStatusBitSize)
 
 SB_NODE_GETTER_0 (, std::string, GetMoleculeName)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedAtoms)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedCarbons)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedHeavyAtoms)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedHydrogens)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedNitrogens)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedOxygens)
 
 SB_NODE_GETTER_0 (, unsigned int, GetNumberOfBondedSulfurs)
 
 SB_NODE_GETTER_0 (, std::string, GetSubstructureName)
 
 SB_NODE_GETTER_0 (, int, GetSubstructureSequenceNumber)
 
 SB_NODE_GETTER_0 (, int, GetChainID)
 
 SB_NODE_GETTER_0 (, Hybridization, GetHybridization)
 
 SB_NODE_GETTER_0 (, Geometry, GetGeometry)
 
 SB_NODE_GETTER_0 (, int, GetOxidationState)
 
 SB_NODE_GETTER_0 (, bool, GetResonance)
 
 SB_NODE_GETTER_0 (, bool, GetAromaticity)
 
 SB_NODE_GETTER_0 (, bool, GetWaterFlag)
 
 SB_NODE_GETTER_0 (, int, GetCustomType)
 
 SB_NODE_PREDICATE_0 (, HasName)
 
 SB_NODE_PREDICATE_0 (, HasAltLocation)
 
 SB_NODE_PREDICATE_0 (, HasInsertionCode)
 
 SB_NODE_PREDICATE_0 (, HasSerialNumber)
 
 SB_NODE_PREDICATE_0 (, HasOccupancy)
 
 SB_NODE_PREDICATE_0 (, HasRecordType)
 
 SB_NODE_PREDICATE_0 (, HasResidueSequenceNumber)
 
 SB_NODE_PREDICATE_0 (, HasTemperatureFactor)
 
 SB_NODE_PREDICATE_0 (, HasPartialCharge)
 
 SB_NODE_PREDICATE_0 (, HasFormalCharge)
 
 SB_NODE_PREDICATE_0 (, HasComment)
 
 SB_NODE_PREDICATE_0 (, HasAnisotropicTFactors)
 
 SB_NODE_PREDICATE_0 (, HasSYBYLType)
 
 SB_NODE_PREDICATE_0 (, HasStatusBit)
 
 SB_NODE_PREDICATE_0 (, HasSubstructureSequenceNumber)
 
 SB_NODE_PREDICATE_0 (, HasChainID)
 
 SB_NODE_PREDICATE_0 (, HasHybridization)
 
 SB_NODE_PREDICATE_0 (, HasGeometry)
 
 SB_NODE_PREDICATE_0 (, HasOxidationState)
 
 SB_NODE_PREDICATE_0 (, HasResonance)
 
 SB_NODE_PREDICATE_0 (, HasAromaticity)
 
 SB_NODE_PREDICATE_0 (, HasWaterFlag)
 
 SB_NODE_PREDICATE_0 (, HasCustomType)
 
 SB_NODE_PREDICATE_0 (, IsInMolecule)
 
 SB_NODE_PREDICATE_0 (, IsInChain)
 
 SB_NODE_PREDICATE_0 (, IsInSegment)
 
 SB_NODE_PREDICATE_0 (, IsInResidue)
 
 SB_NODE_PREDICATE_0 (, IsInAminoAcid)
 
 SB_NODE_PREDICATE_0 (, IsInNucleicAcid)
 
 SB_NODE_PREDICATE_0 (, IsInBackbone)
 
 SB_NODE_PREDICATE_0 (, IsInSideChain)
 
 SB_NODE_PREDICATE_0 (, IsInSubstructure)
 
 SB_NODE_PREDICATE_0 (, IsPlanar)
 
 SB_NODE_PREDICATE_0 (, IsFromAminoAcidBackbone)
 
 SB_NODE_PREDICATE_0 (, IsFromNucleicAcidBackbone)
 
 SB_NODE_PREDICATE_0 (, HasAminoAcidBackboneAtomName)
 
 SB_NODE_PREDICATE_0 (, HasNucleicAcidBackboneAtomName)
 
 SB_NODE_PREDICATE_0 (, IsMetal)
 
 SB_NODE_PREDICATE_0 (, IsAlkaliMetal)
 
 SB_NODE_PREDICATE_0 (, IsAlkalineEarthMetal)
 
 SB_NODE_PREDICATE_0 (, IsLanthanide)
 
 SB_NODE_PREDICATE_0 (, IsActinide)
 
 SB_NODE_PREDICATE_0 (, IsTransitionMetal)
 
 SB_NODE_PREDICATE_0 (, IsPosttransitionMetal)
 
 SB_NODE_PREDICATE_0 (, IsMetalloid)
 
 SB_NODE_PREDICATE_0 (, IsNobleGas)
 
 SB_NODE_PREDICATE_0 (, IsReactiveNonmetal)
 
 SB_NODE_PREDICATE_0 (, IsDiatomicNonmetal)
 
 SB_NODE_PREDICATE_0 (, IsPolyatomicNonmetal)
 
 SB_NODE_PREDICATE_0 (, IsHalogen)
 
 SB_NODE_PREDICATE_0 (, IsHydrogenBondAcceptor)
 
 SB_NODE_PREDICATE_0 (, IsHydrogenBondDonor)
 
 SB_NODE_PREDICATE_0 (, IsAttachedToHydrogenBondDonor)
 
 SB_DECLARE_DATA (SBMStructuralModelNodeAtom)
 

Additional Inherited Members

- Public Member Functions inherited from SBMStructuralModelNodeParticle
virtual ~SBMStructuralModelNodeParticle ()
 
bool isSerializable () const
 Returns true.
 
SBQuantity::length const & getX () const
 Returns the x coordinate.
 
void setX (const SBQuantity::length &x)
 Sets the x coordinate.
 
SBQuantity::length const & getY () const
 Returns the y coordinate.
 
void setY (const SBQuantity::length &y)
 Sets the y coordinate.
 
SBQuantity::length const & getZ () const
 Returns the z coordinate.
 
void setZ (const SBQuantity::length &z)
 Sets the z coordinate.
 
SBPosition3 const & getPosition () const
 Returns the particle's position.
 
void setPosition (SBPosition3 const &newPosition)
 Sets the particle's position.
 
void setPosition (SBPosition3 const &newPosition, SBPosition3 const &oldPosition)
 Sets the particle's position.
 
void setPositionOnTetrahedron (SBPosition3 const &center, SBPosition3 const &vertex1, SBPosition3 const &vertex2, SBPosition3 const &vertex3, SBQuantity::length const &distanceFromCenter)
 Sets the particle's position on a tetrahedron vertex based on the center position, the distance from the center distanceFromCenter, and positions of other 3 vertices vertex1, vertex2, and vertex3.
 
 SB_NODE_GETTER_0 (, SBQuantity::length, GetX)
 
 SB_NODE_GETTER_0 (, SBQuantity::length, GetY)
 
 SB_NODE_GETTER_0 (, SBQuantity::length, GetZ)
 
 SB_NODE_GETTER_0 (, SBPosition3, GetPosition)
 
 SB_DECLARE_DATA (SBMStructuralModelNodeParticle)
 
- Public Member Functions inherited from SBMStructuralModelNode
virtual ~SBMStructuralModelNode ()
 
bool isSerializable () const
 Returns true.
 
virtual SBPointerList< SBMStructuralModelNode > const * getChildren () const
 
SBMStructuralModelNodegetNextStructuralNode () const
 
SBMStructuralModelNodegetPreviousStructuralNode () const
 
virtual bool isLocked () const
 Returns whether the node is locked (because of the model)
 
virtual bool getLockedFlag () const
 Returns the locked flag of the model.
 
SBMStructuralModelgetModel () const
 
bool getMobilityFlag () const
 Returns the mobility flag.
 
void setMobilityFlag (bool flag)
 Sets the mobility flag to flag.
 
virtual unsigned int getOpacity () const
 Returns the opacity.
 
virtual unsigned int getMinimumOpacity () const
 Returns the minimum opacity.
 
virtual unsigned int getTransparency () const
 Returns the transparency.
 
virtual unsigned int getMaximumTransparency () const
 Returns the maximum transparency.
 
void connectStructuralSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBStructuralEvent *)=0)
 
bool structuralSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *)) const
 
void disconnectStructuralSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *))
 
virtual void getNodes (SBNodeIndexer &nodeIndexer, SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a nodeType, a selection status and a visitPredicate, with our without dependencies.
 
virtual void getNodes (SBNodeIndexer &nodeIndexer, const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Returns some nodes.
 
void getAllStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getAllStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getAllStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getStructuralNodesBreadthFirst (std::vector< SBMStructuralModelNode * > &nodeVectorTopDown, std::vector< SBMStructuralModelNode * > &nodeVectorBottomUp, bool(*selectionRule)(SBMStructuralModelNode *))
 
virtual void forEachNodeDepthFirst (void(*action)(SBDDataGraphNode *node))
 Performs an action on each node.
 
virtual void forEachNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node))
 Performs an action on each node.
 
void forEachStructuralNodeBreadthFirst (void(*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeDepthFirst (void(*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeBreadthFirst (SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
 SB_NODE_GETTER_0 (, bool, GetMobilityFlag)
 
 SB_DECLARE_DATA (SBMStructuralModelNode)
 
- Public Member Functions inherited from SBMModelNode
bool isSerializable () const
 Returns true.
 
 SB_DECLARE_DATA (SBMModelNode)
 
- Public Member Functions inherited from SBDDataGraphNode
SBDDataGraphNodegetParent () const
 Returns the parent of the node. More...
 
SBDDataGraphNodegetThisNode () const
 Returns the pointer to this node. More...
 
SBDDataGraphNodegetNextNode () const
 Returns the pointer to the next node in the children of the node's parent. More...
 
SBDDataGraphNodegetPreviousNode () const
 Returns the pointer to the previous node in the children of the node's parent. More...
 
SBDDataGraphNodegetNextNode (SBDDataGraphNode::Type nodeType) const
 Returns the pointer to the next node with type nodeType in the children of the node's parent. More...
 
SBDDataGraphNodegetPreviousNode (SBDDataGraphNode::Type nodeType) const
 Returns the pointer to the previous node with type nodeType in the children of the node's parent. More...
 
SBDDocumentgetDocument () const
 Returns the document the node belongs to. More...
 
virtual bool canAddChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0) const
 Returns whether this node can add node as a child. More...
 
virtual bool canAddChildType (SBDDataGraphNode::Type nodeType) const
 Returns whether this node can add a node with type nodeType as a child. More...
 
virtual bool canHaveDescendantType (SBDDataGraphNode::Type nodeType) const
 Returns whether this node can have a node with type nodeType as a descendant. More...
 
virtual bool addChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0)
 Adds a child to the node. More...
 
virtual bool removeChild (SBDDataGraphNode *node)
 Removes a child from the node. More...
 
bool hasOneOf (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or is the ancestor of one of them. More...
 
bool descendsFrom (SBDDataGraphNode *node) const
 Returns true if and only if this node is node, or descends from it. More...
 
bool descendsFrom (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or descends from one of them. More...
 
bool descendsFrom (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer, or descends from one of them. More...
 
bool isIn (SBDDataGraphNode *node) const
 Returns true if and only if this node is node, or descends from it, or belongs to a group stored in node. More...
 
bool isIn (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or descends from one of them, or belongs to a group stored in one of the nodes of the nodeIndexer. More...
 
bool isIn (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer, or descends from one of them, or belongs to a group stored in of the nodes of the nodePointerIndexer. More...
 
bool isOneOf (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer. More...
 
bool isOneOf (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer. More...
 
SBDDataGraphNodegetRoot () const
 Returns the root of the hierarchy the node belongs to. More...
 
unsigned int getNodeIndex () const
 Returns the node index (unique in the whole data graph, but non-persistent) More...
 
std::string getTypeString (bool humanReadable=false) const
 Returns a string describing the type of the data graph node. More...
 
bool isType (Type type) const
 Returns true when the type of the node corresponds to type.
 
bool isModel () const
 Returns true when the node is a model.
 
bool isStructuralNode () const
 Returns true when the node is a structural node.
 
bool isStructuralModel () const
 Returns true when the node is a structural model.
 
bool isVisualModel () const
 Returns true when the node is a visual model.
 
bool isDynamicalModel () const
 Returns true when the node is a dynamical model.
 
bool isInteractionModel () const
 Returns true when the node is a interaction model.
 
bool isPropertyModel () const
 Returns true when the node is a property model.
 
bool isMesh () const
 Returns true when the node is a mesh.
 
bool isSimulator () const
 Returns true when the node is a simulator.
 
bool isStructuralParticle () const
 Returns true when the node is a structural particle (an atom or a pseudo-atom)
 
virtual void setLockedFlag (bool flag)
 Sets the locked flag.
 
bool isCreated () const
 Returns true if and only if the node is created. More...
 
void create ()
 Creates the node. More...
 
bool isErased () const
 Returns true if and only if the node is erased. More...
 
void erase ()
 Erases the node. More...
 
unsigned int getFlags () const
 Returns the flags. More...
 
unsigned int getInheritedFlags () const
 Returns the inherited flags. More...
 
bool isSelected () const
 Returns whether the node is selected. More...
 
bool getSelected () const
 Returns whether the node is selected.
 
bool getSelectionFlag () const
 Returns the selection flag. More...
 
void setSelectionFlag (bool flag)
 Sets the selection flag. More...
 
bool isVisible () const
 Returns whether the node is visible. More...
 
bool getVisible () const
 Returns whether the node is visible.
 
bool getVisibilityFlag () const
 Returns the visibility flag. More...
 
void setVisibilityFlag (bool flag)
 Sets the visibility flag. More...
 
bool isHighlighted () const
 Returns whether the node is highlighted. More...
 
bool getHighlightingFlag () const
 Returns the highlighting flag. More...
 
void setHighlightingFlag (bool flag)
 Sets the highlighting flag. More...
 
virtual void display (RenderingPass renderingPass)
 Displays the node. More...
 
virtual void display ()
 Displays the node (deprecated) More...
 
virtual void displayForShadow ()
 Displays the node for shadowing purposes (deprecated) More...
 
virtual void displayForSelection ()
 Displays the node for selection purposes (deprecated) More...
 
virtual void setOpacity (unsigned int opacity)
 Sets the opacity.
 
virtual bool hasOpacityRange () const
 Returns whether the node has the opacity range.
 
virtual unsigned int getDefaultOpacity () const
 Returns the default opacity.
 
virtual unsigned int getMaximumOpacity () const
 Returns the maximum opacity.
 
virtual unsigned int getOpacitySingleStep () const
 Returns the opacity single step.
 
virtual std::string getOpacitySuffix () const
 Returns the opacity suffix.
 
virtual void setTransparency (unsigned int transparency)
 Sets the transparency.
 
virtual bool hasTransparencyRange () const
 Returns whether the node has the transparency range.
 
virtual unsigned int getDefaultTransparency () const
 Returns the default transparency.
 
virtual unsigned int getMinimumTransparency () const
 Returns the minimum transparency.
 
virtual unsigned int getTransparencySingleStep () const
 Returns the transparency single step.
 
virtual std::string getTransparencySuffix () const
 Returns the transparency suffix.
 
float getInheritedOpacity () const
 Returns the cumulative opacity, when taking into account the ascendants.
 
float getInheritedTransparency () const
 Returns the cumulative transparency, when taking into account the ascendants.
 
bool addMaterial (SBDDataGraphNodeMaterial *material)
 Adds a material. More...
 
bool removeMaterial ()
 Removes the material. More...
 
bool hasMaterial () const
 Returns whether the node has a material (by itself, or inherited)
 
bool ownsMaterial () const
 Returns whether the node owns a material.
 
SBDDataGraphNodeMaterialgetMaterial () const
 Returns the material. More...
 
SBDDataGraphNodegetMaterialOwner () const
 Returns the node whose material is inherited. More...
 
void connectBaseSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBBaseEvent *)=0)
 Connects the base signal to a slot. More...
 
bool baseSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *)) const
 Returns true when the base signal is connected to a slot.
 
void disconnectBaseSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *))
 Disconnects the base signal from a slot.
 
unsigned int countNodes (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a nodeType, a selection status and a visitPredicate, with our without dependencies. More...
 
unsigned int countNodes (const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a selectionPredicate and a visitPredicate, with our without dependencies. More...
 
virtual unsigned int getNumberOfChains ()
 Returns the number of chains.
 
virtual unsigned int getNumberOfMolecules ()
 Returns the number of molecules.
 
virtual unsigned int getNumberOfResidues ()
 Returns the number of residues.
 
virtual unsigned int getNumberOfSegments ()
 Returns the number of segments.
 
virtual unsigned int getNumberOfStructuralGroups ()
 Returns the number of structural groups.
 
virtual unsigned int getNumberOfStructuralModels ()
 Returns the number of structural models.
 
 SB_DECLARE_DATA (SBDDataGraphNode)
 
- Public Member Functions inherited from SBCReferenceTarget
 SBCReferenceTarget ()
 
virtual ~SBCReferenceTarget ()
 
unsigned int getMemoryFootprint () const
 
void printReferencesToOwners () const
 
- Static Public Member Functions inherited from SBMStructuralModelNode
static void forEachStructuralNodeInSelection (std::vector< SBMStructuralModelNode * > &selection, void(*action)(SBMStructuralModelNode *node))
 
static void forEachStructuralNodeInSelection (std::vector< SBMStructuralModelNode * > &selection, SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
- Static Public Member Functions inherited from SBDDataGraphNode
static void clone (const SBNodeIndexer &sourceNodeIndexer, SBNodeIndexer &destinationNodeIndexer)
 Clones the nodes in sourceNodeIndexer (treated as a whole) and places the clones in destinationNodeIndexer. More...
 
static SBDDataGraphNodegetNode (unsigned int nodeIndex)
 Returns the unique node corresponding to the node index nodeIndex. More...
 
static std::string getTypeString (Type type, bool humanReadable=false)
 Returns a string describing the type of the data graph node. More...
 
static void forEachNodeInSelection (SBNodeIndexer &nodeIndexer, void(*action)(SBDDataGraphNode *node))
 Performs an action for each node in a selection.
 
static void forEachNodeInSelection (SBNodeIndexer &nodeIndexer, SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node))
 Performs an action for each node in a selection.
 
- Protected Member Functions inherited from SBMStructuralModelNodeParticle
 SBMStructuralModelNodeParticle (SBMStructuralModelNodeParticleData *dataPointer)
 Builds a particle at position p.
 
- Protected Member Functions inherited from SBMStructuralModelNode
 SBMStructuralModelNode ()
 Builds a structural model node.
 
 SBMStructuralModelNode (SBMStructuralModelNodeData *dataPointer)
 Builds a structural model node.
 
- Protected Member Functions inherited from SBMModelNode
 SBMModelNode ()
 Builds a base object.
 
 SBMModelNode (SBMModelNodeData *dataPointer)
 Builds a base object.
 
virtual ~SBMModelNode ()
 
- Protected Member Functions inherited from SBDDataGraphNode
 SBDDataGraphNode ()
 Builds a data graph node. More...
 
 SBDDataGraphNode (SBDDataGraphNodeData *dataPointer)
 Builds a data graph node.
 
virtual ~SBDDataGraphNode ()
 Destroys the node. More...
 
- Protected Member Functions inherited from SBCReferenceTarget
void removeAllReferenceOwners ()
 
 SBCReferenceTarget (SBCReferenceTargetData *dataPointer)
 
- Protected Attributes inherited from SBCReferenceTarget
SBCReferenceTargetData * dataPointer
 

Member Enumeration Documentation

◆ Geometry

Enumerator
Undefined 

Undefined geometry.

Linear 

Linear geometry.

Bent 

Bent geometry.

TrigonalPlanar 

Trigonal planar geometry.

TrigonalPyramidal 

Trigonal pyramidal geometry.

TShaped 

T-shaped geometry.

Tetrahedral 

Tetrahedral geometry.

SquarePlanar 

Square planar geometry.

Seesaw 

Seesaw geometry.

TrigonalBipyramidal 

Trigonal bipyramidal geometry.

SquarePyramidal 

Square pyramidal geometry.

PentagonalPlanar 

Pentagonal planar geometry.

Octahedral 

Octahedral geometry.

TrigonalPrismatic 

Trigonal prismatic geometry.

PentagonalPyramidal 

Pentagonal pyramidal geometry.

PentagonalBipyramidal 

Pentagonal bipyramidal geometry.

CappedOctahedral 

Capped octahedral geometry.

CappedTrigonalPrismatic 

Capped trigonal prismatic geometry.

SquareAntiprismatic 

Square antiprismatic geometry.

Dodecahedral 

Dodecahedral geometry.

BicappedTrigonalPrismatic 

Bicapped trigonal prismatic geometry.

TricappedTrigonalPrismatic 

Tricapped trigonal prismatic geometry.

CappedSquareAntiprismatic 

Capped square antiprismatic geometry.

◆ Hybridization

Enumerator
None 

No hybridization.

SP 

Hybridization of an s-orbital and one p-orbital.

SP2 

Hybridization of an s-orbital and two p-orbitals.

SP3 

Hybridization of an s-orbital and three p-orbitals.

SP3D 

Hybridization of an s-orbital, three p-orbitals, and a d-orbital.

SP3D2 

Hybridization of an s-orbital, three p-orbitals, and two d-orbital.

Unknown 

Hybridization is unknown.

Member Function Documentation

◆ addHydrogens()

unsigned int SBMStructuralModelNodeAtom::addHydrogens ( )

The number of expected hydrogens is the expected valence minus the number of bonds. The added hydrogens and bonds become children of the atom's parent if it has one.

If an atom has an alternate location or occupancy fields, the same values will be set for added hydrogens.

◆ getBackbone()

SBMStructuralModelNodeBackbone * SBMStructuralModelNodeAtom::getBackbone ( ) const

SBMStructuralModelNodeAtom::getBackbone.

Returns
If the atom is in a backbone it returns the backbone pointer, else NULL.
See also
isInBackbone
getResidue
getSideChain

◆ getChainID()

int SBMStructuralModelNodeAtom::getChainID ( ) const

SBMStructuralModelNodeAtom::getChainID.

Returns
If the atom is in a chain and this chain has an id (a structural id) it returns the chain's id, else it returns -1.
See also
hasChainID

◆ getChainIDString()

std::string SBMStructuralModelNodeAtom::getChainIDString ( ) const

SBMStructuralModelNodeAtom::getChainIDString.

Returns
If the atom is in a chain and this chain has an id (a structural id) it returns the chain's id as a string, else it returns "Undefined".
See also
hasChainID
getChainID

◆ getHierarchyString()

std::string SBMStructuralModelNodeAtom::getHierarchyString ( const std::string &  separator = " / ",
bool  includeNodeType = false 
) const
virtual

SBMStructuralModelNodeAtom::getHierarchyString This functions returns a string with information on the atom's hierarchy. If the atom has a name then this name is provided in the hierarchy information, else the atom's element symbol is used. If the atom has an alternate location then it is added after its name in square brackets. This information can be used for logging and debugging.

Returns
A string with information on the atom's hierarchy.

Reimplemented from SBDDataGraphNode.

◆ getResidueSequenceNumber()

int SBMStructuralModelNodeAtom::getResidueSequenceNumber ( ) const

SBMStructuralModelNodeAtom::getResidueSequenceNumber.

Returns
If the atom is in a residue and this residue has a sequence number (a structural id) it returns the residue's sequence number, else it returns -1.
See also
isInResidue
hasResidueSequenceNumber

◆ getResidueSequenceNumberString()

std::string SBMStructuralModelNodeAtom::getResidueSequenceNumberString ( ) const

SBMStructuralModelNodeAtom::getResidueSequenceNumberString.

Returns
If the atom is in a residue and this residue has a sequence number (a structural id) it returns the residue's sequence number as a string, else it returns "Undefined".
See also
isInResidue
hasResidueSequenceNumber

◆ getResidueTypeString()

std::string SBMStructuralModelNodeAtom::getResidueTypeString ( ) const

SBMStructuralModelNodeAtom::getResidueTypeString.

Returns
If the atom is in a residue it returns the residue's type as a string, else it returns "Undefined".
See also
isInResidue

◆ getSideChain()

SBMStructuralModelNodeSideChain * SBMStructuralModelNodeAtom::getSideChain ( ) const

SBMStructuralModelNodeAtom::getSideChain.

Returns
If the atom is in a side chain it returns the side chain pointer, else NULL.
See also
isInSideChain
getResidue
getBackbone

◆ getSubstructure()

SBMStructuralModelNodeGroup * SBMStructuralModelNodeAtom::getSubstructure ( ) const

SBMStructuralModelNodeAtom::getSubstructure.

Returns
If the atom is in a structural group it returns the structural group pointer, else NULL.
See also
isInSubstructure
isInResidue

◆ getSubstructureName()

std::string SBMStructuralModelNodeAtom::getSubstructureName ( ) const

SBMStructuralModelNodeAtom::getSubstructureName.

Returns
If the atom is in a substructure (a structural group) it returns the substructure's name, else an empty string.
See also
isInSubstructure
getSubstructure

◆ getSubstructureSequenceNumber()

int SBMStructuralModelNodeAtom::getSubstructureSequenceNumber ( ) const

SBMStructuralModelNodeAtom::getSubstructureSequenceNumber.

Returns
If the atom is in a substructure (a structural group) and this substructure has a sequence number (a structural id) it returns the substructure's sequence number, else it returns -1.
See also
isInSubstructure
hasSubstructureSequenceNumber

◆ getSubstructureSequenceNumberString()

std::string SBMStructuralModelNodeAtom::getSubstructureSequenceNumberString ( ) const

SBMStructuralModelNodeAtom::getSubstructureSequenceNumberString.

Returns
If the atom is in a substructure (a structural group) and this substructure has a sequence number (a structural id) it returns the substructure's sequence number as a string, else it returns "Undefined".
See also
isInSubstructure
hasSubstructureSequenceNumber

◆ hasAminoAcidBackboneAtomName()

bool SBMStructuralModelNodeAtom::hasAminoAcidBackboneAtomName ( ) const

SBMStructuralModelNodeAtom::hasAminoAcidBackboneAtomName.

Returns
True if the atom's name corresponds to one of the amino-acid backbone atoms.
See also
isFromAminoAcidBackbone

◆ hasChainID()

bool SBMStructuralModelNodeAtom::hasChainID ( ) const

SBMStructuralModelNodeAtom::hasChainID.

Returns
True if the atom is in a chain and this chain has an id (a structural id).
See also
getChainID

◆ hasNucleicAcidBackboneAtomName()

bool SBMStructuralModelNodeAtom::hasNucleicAcidBackboneAtomName ( ) const

SBMStructuralModelNodeAtom::hasNucleicAcidBackboneAtomName.

Returns
True if the atom's name corresponds to one of nucleic acid backbone atoms.
See also
isFromNucleicAcidBackbone

◆ hasResidueSequenceNumber()

bool SBMStructuralModelNodeAtom::hasResidueSequenceNumber ( ) const

SBMStructuralModelNodeAtom::hasResidueSequenceNumber.

Returns
True if the atom is in a residue and this residue has a sequence number (a structural id).
See also
isInResidue
getResidueSequenceNumber

◆ hasSubstructureSequenceNumber()

bool SBMStructuralModelNodeAtom::hasSubstructureSequenceNumber ( ) const

SBMStructuralModelNodeAtom::hasSubstructureSequenceNumber.

Returns
True if the atom is in a substructure (a structural group) and this substructure has a sequence number (a structural id).
See also
isInSubstructure
getSubstructureSequenceNumber

◆ isAttachedToHydrogenBondDonor()

bool SBMStructuralModelNodeAtom::isAttachedToHydrogenBondDonor ( ) const

SBMStructuralModelNodeAtom::isAttachedToHydrogenBondDonor This function checks whether the atom is attached to a hydrogen bond donor.

Returns
True if the atom is attached to a hydrogen bond donor.
See also
isHydrogenBondAcceptor
isHydrogenBondDonor
isDonorborneHydrogen

◆ isCarboxylOxygen()

bool SBMStructuralModelNodeAtom::isCarboxylOxygen ( ) const

SBMStructuralModelNodeAtom::isCarboxylOxygen Checks if the atom is an Oxygen atom in a carboxyl group (C(=O)OH): an Oxygen atom connected to a Carbon atom in a carboxyl group.

HO-C(=O)-R

Returns
True if the atom is an Oxygen in a carboxyl group

◆ isDonorborneHydrogen()

bool SBMStructuralModelNodeAtom::isDonorborneHydrogen ( ) const

SBMStructuralModelNodeAtom::isDonorborneHydrogen This function checks whether the atom is a hydrogen atom attached to a hydrogen bond donor.

Returns
True if the atom is a hydrogen attached to a hydrogen bond donor.
See also
isHydrogenBondAcceptor
isHydrogenBondDonor
isAttachedToHydrogenBondDonor

◆ isFromAminoAcidBackbone()

bool SBMStructuralModelNodeAtom::isFromAminoAcidBackbone ( ) const

SBMStructuralModelNodeAtom::isFromAminoAcidBackbone.

Returns
True if the atom is from an amino-acid backbone: the atom is in a backbone and its name corresponds to one of the amino-acid backbone atoms.
See also
hasAminoAcidBackboneAtomName

◆ isFromNucleicAcidBackbone()

bool SBMStructuralModelNodeAtom::isFromNucleicAcidBackbone ( ) const

SBMStructuralModelNodeAtom::isFromNucleicAcidBackbone.

Returns
True if the atom is from a nucleic acid backbone: the atom is in a backbone and its name corresponds to one of the nucleic acid backbone atoms.
See also
hasNucleicAcidBackboneAtomName

◆ isHydrogenBondAcceptor()

bool SBMStructuralModelNodeAtom::isHydrogenBondAcceptor ( ) const

SBMStructuralModelNodeAtom::isHydrogenBondAcceptor This function checks whether the atom is a hydrogen bond acceptor. Only the following atom types are considered to as possible acceptors: N, O, S, F.

Returns
True if the atom is a hydrogen bond acceptor.
See also
isHydrogenBondDonor
isDonorborneHydrogen

◆ isHydrogenBondDonor()

bool SBMStructuralModelNodeAtom::isHydrogenBondDonor ( ) const

SBMStructuralModelNodeAtom::isHydrogenBondDonor This function checks whether the atom is a hydrogen bond donor: an electronegative atom (N, O, S, F) that has at least one hydrogen covalently bound to it.

Returns
True if the atom is a hydrogen bond donor.
See also
isHydrogenBondAcceptor
isDonorborneHydrogen

◆ isInAminoAcid()

bool SBMStructuralModelNodeAtom::isInAminoAcid ( ) const

SBMStructuralModelNodeAtom::isInAminoAcid This function checks whether the atom is in a residue which type corresponds to an amino acid.

Returns
True if the atom is in an amino acid residue.
See also
isInResidue
isInNucleicAcid

◆ isInBackbone()

bool SBMStructuralModelNodeAtom::isInBackbone ( ) const

SBMStructuralModelNodeAtom::isInBackbone This function checks whether the atom is in a backbone.

Returns
True if the atom is in a backbone.
See also
getBackbone
isInResidue
isInSideChain

◆ isInNucleicAcid()

bool SBMStructuralModelNodeAtom::isInNucleicAcid ( ) const

SBMStructuralModelNodeAtom::isInNucleicAcid This function checks whether the atom is in a residue which type corresponds to a nucleic acid.

Returns
True if the atom is in a nucleic acid residue.
See also
isInResidue
isInAminoAcid

◆ isInSideChain()

bool SBMStructuralModelNodeAtom::isInSideChain ( ) const

SBMStructuralModelNodeAtom::isInSideChain This function checks whether the atom is in a side chain.

Returns
True if the atom is in a side chain.
See also
getSideChain
isInResidue
isInBackbone

◆ isInSubstructure()

bool SBMStructuralModelNodeAtom::isInSubstructure ( ) const

SBMStructuralModelNodeAtom::isInSubstructure This function checks whether the atom is in a substructure (a structural group).

Returns
True if the atom is in a structural group.
See also
getSubstructure
isInResidue

◆ isNitroOxygen()

bool SBMStructuralModelNodeAtom::isNitroOxygen ( ) const

SBMStructuralModelNodeAtom::isNitroOxygen Check if the atom is an Oxygen atom in a nitro (-NO2) group:

HO-N(OH)-R

Returns
True if the atom is an Oxygen in a nitro group

◆ isSulfoneOxygen()

bool SBMStructuralModelNodeAtom::isSulfoneOxygen ( ) const

SBMStructuralModelNodeAtom::isSulfoneOxygen Check if the atom is an Oxygen atom in a sulfone (R1-SO2-R2).

Returns
True if the atom is an Oxygen in a sulfone

◆ isThiocarboxylOxygen()

bool SBMStructuralModelNodeAtom::isThiocarboxylOxygen ( ) const

SBMStructuralModelNodeAtom::isThiocarboxylOxygen Checks if the atom is an Oxygen atom in a thiocarboxyl group (C(=S)OH or C(=O)SH): an Oxygen atom connected to a Carbon atom in a thiocarboxyl group.

Returns
True if the atom is an Oxygen in a thiocarboxyl group