This class describes a bond in a structural model.
Constructors and destructors | |
SBMStructuralModelNodeBond () | |
Constructs a bond. | |
SBMStructuralModelNodeBond (SBMStructuralModelNodeAtom *leftAtom, SBMStructuralModelNodeAtom *rightAtom, const SBQuantity::dimensionless &order=SBQuantity::dimensionless(1.0)) | |
Constructs a bond between atoms leftAtom and rightAtom and a specific bond order . | |
virtual | ~SBMStructuralModelNodeBond () |
Destructs the bond. | |
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 bond. | |
virtual void | unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) |
Unserializes the bond. | |
Topology | |
enum | BondType { Undefined, Single, Double, Triple, Amide, Aromatic, Dummy } |
The bond type. More... | |
SBQuantity::dimensionless const & | getOrder () const |
Returns the bond order. | |
void | setOrder (const SBQuantity::dimensionless &order) |
Sets the bond order to order . | |
BondType | getBondType () const |
Returns the bond type. | |
void | setBondType (BondType bondType) |
Sets the bond type to bondType . | |
SBMStructuralModelNodeAtom * | getLeftAtom () const |
Returns a pointer to the left atom. | |
SBMStructuralModelNodeAtom * | getRightAtom () const |
Returns a pointer to the right atom. | |
SBMStructuralModelNodeAtom * | getOppositeAtom (SBMStructuralModelNodeAtom *atom) const |
Returns the pointer to the atom opposite atom , when atom is either the left atom or the right atom of the bond. | |
SBQuantity::length | getLength () const |
Compute the length of the bond. | |
SBPosition3 | getMidPoint () const |
Compute the mid point of the bond. | |
bool | isLinking (const SBNodeIndexer &nodeIndexer) const |
Returns true if and only if either atom is in nodeIndexer , or descends from a node of nodeIndexer . | |
virtual SBMStructuralModelNodeBond * | clone () |
Returns a copy of the node and its descendants. | |
static std::string | getBondTypeString (BondType bondType) |
Returns the string corresponding to the bondType . | |
Identity | |
SBDDataGraphNode::Type | getType () const |
Returns the node type (SBNode::Bond) | |
Selection functions | |
virtual void | getNodes (SBNodeIndexer &nodeIndexer, const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) |
Returns some nodes. More... | |
Properties | |
bool | hasStatusBit () const |
Returns true when the bond's status bit is set. | |
std::string const & | getStatusBit () const |
Returns the bond's status bit. | |
void | setStatusBit (const std::string &statusBit) |
Sets the bond's status bit. | |
void | clearStatusBit () |
Clears the bond's status bit. | |
bool | hasCustomType () const |
Returns true when the bond's custom type is set. | |
int const & | getCustomType () const |
Returns the bond's custom type. | |
void | setCustomType (const int &water) |
Sets the bond's custom type. | |
void | clearCustomType () |
Clears the bond's custom type. | |
Debugging | |
virtual void | print (unsigned int offset=0) const |
Prints debugging information. | |
Additional Inherited Members | |
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, StructuralModelNodeResidue, Residue, StructuralModelNodeSegment, Segment, StructuralModelNodeProtein, Protein, StructuralModelNodeChain, Chain, StructuralModelNodeMolecule, Molecule, StructuralModelNodeBackbone, Backbone, StructuralModelNodeSideChain, SideChain, VisualModel, 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, DataGraphNodeGroup, NodeGroup, Controller, ControllerNode } |
The type of the data graph node. More... | |
Public Member Functions inherited from SBMStructuralModelNode | |
virtual | ~SBMStructuralModelNode () |
virtual SBPointerList< SBMStructuralModelNode > const * | getChildren () const |
SBMStructuralModelNode * | getNextStructuralNode () const |
SBMStructuralModelNode * | getPreviousStructuralNode () const |
SBMStructuralModel * | getModel () const |
bool | getMobilityFlag () const |
Returns the mobility flag. | |
void | setMobilityFlag (bool flag) |
Sets the mobility flag to flag . | |
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 *)) |
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)) |
Public Member Functions inherited from SBMModelNode | |
Public Member Functions inherited from SBDDataGraphNode | |
SBDDataGraphNode * | getParent () const |
Returns the parent of the node. More... | |
SBDDataGraphNode * | getThisNode () const |
Returns the pointer to this node. More... | |
SBDDataGraphNode * | getNextNode () const |
Returns the pointer to the next node in the children of the node's parent. More... | |
SBDDataGraphNode * | getPreviousNode () const |
Returns the pointer to the previous node in the children of the node's parent. More... | |
SBDDataGraphNode * | getNextNode (SBDDataGraphNode::Type nodeType) const |
Returns the pointer to the next node with type nodeType in the children of the node's parent. More... | |
SBDDataGraphNode * | getPreviousNode (SBDDataGraphNode::Type nodeType) const |
Returns the pointer to the previous node with type nodeType in the children of the node's parent. More... | |
SBDDocument * | getDocument () 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 | 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 | isIn (SBDDataGraphNode *node) const |
Returns true if and only if this node is node , or descends from it. 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. 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. 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... | |
SBDDataGraphNode * | getRoot () 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... | |
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 | 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 | 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) | |
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 visible. | |
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... | |
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 (const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) |
Collects nodes into nodeIndexer , based on a selectionPredicate and a visitPredicate , with our without dependencies. More... | |
bool | addMaterial (SBDDataGraphNodeMaterial *material) |
Adds a material. More... | |
bool | removeMaterial () |
Removes the material. More... | |
SBDDataGraphNodeMaterial * | getMaterial () const |
Returns the material. More... | |
SBDDataGraphNode * | getMaterialOwner () const |
Returns the node whose material is inherited. More... | |
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 SBDDataGraphNode * | getNode (unsigned int nodeIndex) |
Returns the unique node corresponding to the node index nodeIndex . More... | |
static std::string | getTypeString (Type type) |
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 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... | |
|
virtual |
This function adds to nodeIndexer the bond itself (if the predicates are valid) and, if includeDependencies
is true, attempts to add the bonded atoms as well.
Reimplemented from SBMStructuralModelNode.