Class SBMStructuralModelConformation#
ClassList > SBMStructuralModelConformation
This class describes a structural conformation. More...
#include <SBMStructuralModelConformation.hpp>
Inherits the following classes: SBDDataGraphNode
Public Types inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| enum | RenderingPass The rendering pass. |
| enum | Type The type of the data graph node. |
Public Functions#
| Type | Name |
|---|---|
| SBMStructuralModelConformation () Constructs a structural model conformation. |
|
| SBMStructuralModelConformation (const std::string & name, const SBNodeIndexer & nodeIndexer, SBVector< SBPosition3 > * positionData=nullptr, const SBQuantity::energy & energy=SBQuantity::energy::zero, const SBQuantity::time & time=SBQuantity::time::zero, SBVector< SBVelocity3 > * velocityData=nullptr, SBVector< SBForce3 > * forceData=nullptr) Constructs a structural model conformation with name name from the nodes innodeIndexer . |
|
| bool | addAtom (SBAtom * atom, const SBPosition3 & atomPosition) Adds a atom with positionatomPosition . |
| void | clearSourceFileName () Clears the name of the file associated to the conformation. |
| virtual SBMStructuralModelConformation * | clone () override Returns a copy of the node and its descendants. |
| virtual void | createStructuralModels (SBNodeIndexer & structuralModelIndexer) const Create structural models corresponding to all steps. |
| virtual void | forEachNodeDepthFirst (void(*)(SBDDataGraphNode *node) action) override Performs the action on this conformation. |
| virtual void | forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) override Performs the object 'saction on this conformation. |
| SBPointerIndexer< SBAtom > const * | getAtomIndexer () const Returns the indexer of atoms for which a position is saved. |
| virtual SBQuantity::energy | getEnergy () const Returns the energy data. |
| virtual bool | getForce (unsigned int atomIndex, SBForce3 & force) const Retrieves the force of atom atomIndex and stores it inforce . |
| virtual bool | getForce (SBAtom * atom, SBForce3 & force) const Retrieves the force of atom atom and stores it inforce . |
| virtual SBVector< SBForce3 > * | getForceData () const Returns the force data. |
| SBMStructuralModelConformation * | getNextConformation () const Returns the next conformation in the document. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Collects nodes into nodeIndexer , based on anodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Collects nodes into nodeIndexer , based on aselectionPredicate and avisitPredicate , with or without dependencies. |
| unsigned int | getNumberOfAtoms () const Returns the number of atoms for which a position is saved. |
| bool | getPosition (unsigned int atomIndex, SBPosition3 & atomPosition) const Retrieves the position of atom atomIndex and stores it inatomPosition . |
| bool | getPosition (SBAtom * atom, SBPosition3 & atomPosition) const Retrieves the position of atom atom and stores it inatomPosition . |
| virtual SBVector< SBPosition3 > * | getPositionData () const Returns the position data. |
| SBMStructuralModelConformation * | getPreviousConformation () const Returns the previous conformation in the document. |
| const std::string & | getSourceFileName () const Returns the name of the file associated to the conformation. |
| virtual SBQuantity::time | getTime () const Returns the time data. |
| virtual SBNode::Type | getType () override const Returns the data graph node type. |
| virtual bool | getVelocity (unsigned int atomIndex, SBVelocity3 & velocity) const Retrieves the velocity of atom atomIndex and stores it invelocity . |
| virtual bool | getVelocity (SBAtom * atom, SBVelocity3 & velocity) const Retrieves the velocity of atom atom and stores it invelocity . |
| virtual SBVector< SBVelocity3 > * | getVelocityData () const Returns the velocity data. |
| virtual bool | hasNode (SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Checks for nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual bool | hasNode (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) override const Checks for nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| bool | hasSourceFileName () const Returns true when the conformation has the source file name set. |
| bool | insertAtom (unsigned int atomIndex, SBAtom * atom, const SBPosition3 & atomPosition) Inserts a atom with positionatomPosition at indexatomIndex . |
| virtual bool | isSerializable () override const Returns true __ |
| virtual void | print (unsigned int offset=0) override const Prints the conformation. |
| bool | removeAtom (SBAtom * atom) Removes an atom from the conformation. |
| void | restore () const Restores the conformation. |
| virtual void | serialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override const Serializes the conformation. |
| virtual void | setEnergy (const SBQuantity::energy & energy) Sets the energy data. |
| virtual bool | setForce (unsigned int atomIndex, const SBForce3 & force) Sets the force of atom atomIndex toforce . |
| virtual bool | setForce (SBAtom * atom, const SBForce3 & force) Sets the force of atom atom toforce . |
| virtual void | setForceData (SBVector< SBForce3 > * forceData) Sets the force data. |
| bool | setPosition (unsigned int atomIndex, const SBPosition3 & atomPosition) Sets the position of atom atomIndex and stores it inatomPosition . |
| bool | setPosition (SBAtom * atom, const SBPosition3 & atomPosition) Sets the position of atom atom and stores it inatomPosition . |
| virtual void | setPositionData (SBVector< SBPosition3 > * positionData) Sets the position data. |
| void | setSourceFileName (const std::string & fileName) Sets the name of the file associated to the conformation. |
| virtual void | setTime (const SBQuantity::time & time) Sets the time data. |
| virtual bool | setVelocity (unsigned int atomIndex, const SBVelocity3 & velocity) Sets the velocity of atom atomIndex tovelocity . |
| virtual bool | setVelocity (SBAtom * atom, const SBVelocity3 & velocity) Sets the velocity of atom atom tovelocity . |
| virtual void | setVelocityData (SBVector< SBVelocity3 > * velocityData) Sets the velocity data. |
| virtual void | unserialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) override Unserializes the conformation. |
| virtual | ~SBMStructuralModelConformation () Destructs the conformation. |
Public Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBCClassProxy *, GetProxy) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, This) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetParent) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetThis) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetNextNode) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetPreviousNode) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDocument *, GetDocument) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode *, GetRoot) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, unsigned int, GetNodeIndex) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBDDataGraphNode::Type, GetType) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetSelectionFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetLockedFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetVisibilityFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, bool, GetHighlightingFlag) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, unsigned int, GetFlags) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetName) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetClass) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, std::string, GetElement) |
|
| SB_NODE_GETTER_0 (SB_SBDDATAGRAPH_EXPORT, SBCContainerUUID, GetElementUUID) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, All) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, None) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsAtom) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsBond) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsStructuralNode) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsStructuralModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVisualModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsMesh) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLight) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsInteractionModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsDynamicalModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsPropertyModel) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSimulator) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsBallAndStick) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLicorice) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVanDerWaals) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsCartoon) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsRibbon) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsTube) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsGaussianSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSolventAccessibleSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSolventExcludedSurface) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, HasMaterial) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, OwnsMaterial) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsLocked) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSerializable) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsCreated) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsErased) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsSelected) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsVisible) |
|
| SB_NODE_PREDICATE_0 (SB_SBDDATAGRAPH_EXPORT, IsHighlighted) |
|
| SB_NODE_PREDICATE_1 (SB_SBDDATAGRAPH_EXPORT, IsType, SBDDataGraphNode::Type) |
|
| SB_NODE_PREDICATE_1 (SB_SBDDATAGRAPH_EXPORT, HasOneOf, SBNodeIndexer) |
|
| virtual bool | addChild (SBDDataGraphNode * node, SBDDataGraphNode * nextNode=nullptr) Adds a child to the node. |
| bool | addMaterial (SBDDataGraphNodeMaterial * material) Adds a material. |
| bool | baseSignalIsConnectedToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer) const Returns true when the base signal is connected to a slot. |
| virtual bool | canAddChild (const SBDDataGraphNode * node, const SBDDataGraphNode * nextNode=nullptr) const Returns whether this node can add node as a child. |
| virtual bool | canAddChildType (SBDDataGraphNode::Type nodeType) const Returns whether this node can add a node with type nodeType as a child. |
| bool | canAddMaterial () const Returns whether can add a material to the node based on its type. |
| virtual bool | canHaveDescendantType (SBDDataGraphNode::Type nodeType) const Returns whether this node can have a node with type nodeType as a descendant. |
| virtual SBDDataGraphNode * | clone () Returns a copy of the node and its descendants. |
| void | connectBaseSignalToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer, SBCReferenceTarget * nextReferenceTarget=0, void(SBCReferenceTarget::*)(SBBaseEvent *) nextFunctionPointer=0) Connects the base signal to a slot. |
| unsigned int | countNodes (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Counts nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| unsigned int | countNodes (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Counts nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| void | create () Creates the node. |
| bool | descendsFrom (const SBDDataGraphNode * node) const Returns true if and only if this node isnode , or descends from it. |
| bool | descendsFrom (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or descends from one of them. |
| bool | descendsFrom (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer , or descends from one of them. |
| void | disconnectBaseSignalFromSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBBaseEvent *) functionPointer) Disconnects the base signal from a slot. |
| virtual void | display (RenderingPass renderingPass) Displays the node. |
| virtual void | display () Displays the node (deprecated) |
| virtual void | displayForSelection () Displays the node for selection purposes (deprecated) |
| virtual void | displayForShadow () Displays the node for shadowing purposes (deprecated) |
| void | erase () Erases the node. |
| virtual void | forEachNodeDepthFirst (void(*)(SBDDataGraphNode *node) action) Performs the action on this node. |
| virtual void | forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) Performs the objects 'saction on this node. |
| unsigned int | getDefaultOpacity () const Returns the default opacity. |
| unsigned int | getDefaultTransparency () const Returns the default transparency. |
| SBDDocument * | getDocument () const Returns the document the node belongs to. |
| virtual unsigned int | getFlags () const Returns the flags. |
| virtual std::string | getHierarchyString (const std::string & separator=" / ", bool includeNodeType=false) const Returns a string with hierarchical information on the node and its parents names. |
| bool | getHighlightingFlag () const Returns the highlighting flag. |
| virtual unsigned int | getInheritedFlags () const Returns the inherited flags. |
| 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. |
| virtual bool | getLockedFlag () const Returns the locked flag. |
| SBDDataGraphNodeMaterial * | getMaterial () const Returns the material. |
| SBDDataGraphNode * | getMaterialOwner () const Returns the node whose material is inherited. |
| unsigned int | getMaximumOpacity () const Returns the maximum opacity. |
| unsigned int | getMaximumTransparency () const Returns the maximum transparency. |
| unsigned int | getMinimumOpacity () const Returns the minimum opacity. |
| unsigned int | getMinimumTransparency () const Returns the minimum transparency. |
| virtual SBQuantity::mass | getMolecularWeight () Returns the molecular weight. |
| virtual std::string const & | getName () const Returns the name of the node. |
| SBDDataGraphNode * | getNextNode () const Returns the pointer to the next node in the children of the node's parent. |
| SBDDataGraphNode * | getNextNode (SBDDataGraphNode::Type nodeType) const Returns the pointer to the next node with type nodeType in the children of the node's parent. |
| unsigned int | getNodeIndex () const Returns the node index (unique in the whole data graph, but non-persistent) |
| SBUUID | getNodeUUID () const Returns the node UUID. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Collects nodes into nodeIndexer , based on anodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual void | getNodes (SBNodeIndexer & nodeIndexer, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Collects nodes into nodeIndexer , based on aselectionPredicate and avisitPredicate , with or without dependencies. |
| virtual unsigned int | getNumberOfAtoms () Returns the number of atoms. |
| virtual unsigned int | getNumberOfCarbons () Returns the number of carbons. |
| virtual unsigned int | getNumberOfChains () Returns the number of chains. |
| virtual unsigned int | getNumberOfCoarseGrainedAtoms () Returns the number of coarse-grained atoms. |
| virtual unsigned int | getNumberOfHydrogens () Returns the number of hydrogens. |
| virtual unsigned int | getNumberOfMolecules () Returns the number of molecules. |
| virtual unsigned int | getNumberOfNitrogens () Returns the number of nitrogens. |
| virtual unsigned int | getNumberOfOtherAtoms () Returns the number of other atoms. |
| virtual unsigned int | getNumberOfOxygens () Returns the number of oxygens. |
| 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. |
| virtual unsigned int | getNumberOfSulfurs () Returns the number of sulfurs. |
| virtual unsigned int | getOpacity () const Returns the opacity. |
| unsigned int | getOpacitySingleStep () const Returns the opacity single step. |
| std::string | getOpacitySuffix () const Returns the opacity suffix. |
| SBDDataGraphNode * | getParent () const Returns the parent of the node. |
| SBDDataGraphNode * | getPreviousNode () const Returns the pointer to the previous node in the children of the node's parent. |
| SBDDataGraphNode * | getPreviousNode (SBDDataGraphNode::Type nodeType) const Returns the pointer to the previous node with type nodeType in the children of the node's parent. |
| SBDDataGraphNode * | getRoot () const Returns the root of the hierarchy the node belongs to. |
| bool | getSelected () const Returns whether the node is selected. |
| bool | getSelectionFlag () const Returns the selection flag. |
| virtual int | getSumOfFormalCharges () Returns the sum of formal charges. |
| virtual float | getSumOfPartialCharges () Returns the sum of partial charges. |
| SBDDataGraphNode * | getThisNode () const Returns the pointer to this node. |
| virtual unsigned int | getTransparency () const Returns the transparency. |
| unsigned int | getTransparencySingleStep () const Returns the transparency single step. |
| std::string | getTransparencySuffix () const Returns the transparency suffix. |
| virtual Type | getType () const Returns the type of the data graph node. |
| std::string | getTypeString (bool humanReadable=false) const Returns a string describing the type of the data graph node. |
| bool | getVisibilityFlag () const Returns the visibility flag. |
| bool | getVisible () const Returns whether the node is visible. |
| bool | hasMaterial () const Returns whether the node has a material (by itself, or inherited) |
| virtual bool | hasNode (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Returns whether the node has nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies. |
| virtual bool | hasNode (const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const Returns whether the node has nodes based on a selectionPredicate and avisitPredicate , with or without dependencies. |
| bool | hasOneOf (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or is the ancestor of one of them, or is a group that stores one of them. |
| bool | hasOpacityRange () const Returns whether the node has the opacity range. |
| bool | hasTransparencyRange () const Returns whether the node has the transparency range. |
| bool | isAtom () const Returns true when the node is an atom. |
| bool | isBallAndStick () const Returns true when the node is the default ball-and-stick visual model. |
| bool | isBond () const Returns true when the node is a bond. |
| bool | isCartoon () const Returns true when the node is the default cartoon visual model. |
| bool | isCreated () const Returns true if and only if the node is created. |
| bool | isDynamicalModel () const Returns true when the node is a dynamical model. |
| bool | isErased () const Returns true if and only if the node is erased. |
| bool | isGaussianSurface () const Returns true when the node is the default Gaussian surface visual model. |
| bool | isHighlighted () const Returns whether the node is highlighted. |
| bool | isIn (const SBDDataGraphNode * node) const Returns true if and only if this node isnode , or descends from it, or belongs to a group stored innode . |
| bool | isIn (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer , or descends from one of them, or belongs to a group stored in one of the nodes of thenodeIndexer . |
| bool | isIn (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer , or descends from one of them, or belongs to a group stored in of the nodes of thenodePointerIndexer . |
| bool | isInteractionModel () const Returns true when the node is a interaction model. |
| bool | isLicorice () const Returns true when the node is the default licorice visual model. |
| bool | isLight () const Returns true when the node is a light. |
| virtual bool | isLocked () const Returns whether the node is locked. |
| bool | isMesh () const Returns true when the node is a mesh. |
| bool | isModel () const Returns true when the node is a model. |
| bool | isOneOf (const SBNodeIndexer & nodeIndexer) const Returns true if and only if this node is one of the nodes of thenodeIndexer . |
| bool | isOneOf (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const Returns true if and only if this node is one of the nodes of thenodePointerIndexer . |
| bool | isPropertyModel () const Returns true when the node is a property model. |
| bool | isRibbon () const Returns true when the node is the default ribbon visual model. |
| bool | isSelected () const Returns whether the node is selected. |
| virtual bool | isSerializable () const Returns true when the class is serializable. |
| bool | isSimulator () const Returns true when the node is a simulator. |
| bool | isSolventAccessibleSurface () const Returns true when the node is the default solvent accessible surface visual model. |
| bool | isSolventExcludedSurface () const Returns true when the node is the default solvent excluded surface visual model. |
| bool | isStructuralModel () const Returns true when the node is a structural model. |
| bool | isStructuralNode () const Returns true when the node is a structural node. |
| bool | isTube () const Returns true when the node is the default tube visual model. |
| bool | isType (Type type) const Returns true when the type of the node corresponds totype . |
| bool | isVanDerWaals () const Returns true when the node is the default van der Waals visual model. |
| bool | isVisible () const Returns whether the node is visible. |
| bool | isVisualModel () const Returns true when the node is a visual model. |
| bool | ownsMaterial () const Returns whether the node owns a material. |
| virtual void | print (unsigned int offset=0) const Prints some debugging information. |
| virtual bool | removeChild (SBDDataGraphNode * node) Removes a child from the node. |
| bool | removeMaterial () Removes the material. |
| void | removeMaterialsFromDescendants () Removes materials from all nodes that descend from this node, but it does not remove the material from the node itself. |
| 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 node. |
| void | setHighlightingFlag (bool flag) Sets the highlighting flag. |
| virtual void | setLockedFlag (bool flag) Sets the locked flag. |
| virtual void | setName (const std::string & name) Sets the name of the node. |
| virtual void | setOpacity (unsigned int opacity) Sets the opacity. |
| void | setSelectionFlag (bool flag) Sets the selection flag. |
| virtual void | setTransparency (unsigned int transparency) Sets the transparency. |
| void | setVisibilityFlag (bool flag) Sets the visibility flag. |
| virtual void | unserialize (SBCSerializer * serializer, const SBNodeIndexer & nodeIndexer, const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber & classVersionNumber=SBVersionNumber(1, 0, 0)) Unserializes the node. |
Public Functions inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTarget () Builds the reference target. |
|
| unsigned int | getMemoryFootprint () const Returns the memory footprint. |
| void | printReferencesToOwners () const Prints the references to the owners of this reference target. |
| virtual | ~SBCReferenceTarget () Destructor. |
Public Static Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| bool | canAddMaterial (SBDDataGraphNode::Type nodeType) Returns whether can add a material to a node of type nodeType . |
| void | clone (const SBNodeIndexer & sourceNodeIndexer, SBNodeIndexer & destinationNodeIndexer) Clones the nodes in sourceNodeIndexer (treated as a whole) and places the clones indestinationNodeIndexer . |
| void | forEachNodeInSelection (SBNodeIndexer & nodeIndexer, void(*)(SBDDataGraphNode *node) action) Performs the action for each node innodeIndexer __ |
| void | forEachNodeInSelection (SBNodeIndexer & nodeIndexer, SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action) Performs the objects 'saction for each node innodeIndexer __ |
| SBDDataGraphNode * | getNode (unsigned int nodeIndex) Returns the unique node corresponding to the node index nodeIndex . |
| std::string | getTypeString (Type type, bool humanReadable=false) Returns a string describing the type of the data graph node. |
Protected Attributes inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTargetData * | dataPointer A pointer to the private data. |
Protected Functions inherited from SBDDataGraphNode#
See SBDDataGraphNode
| Type | Name |
|---|---|
| SBDDataGraphNode () Builds a data graph node. |
|
| SBDDataGraphNode (SBDDataGraphNodeData * dataPointer) Builds a data graph node. |
|
| virtual | ~SBDDataGraphNode () Destroys the node. |
Protected Functions inherited from SBCReferenceTarget#
| Type | Name |
|---|---|
| SBCReferenceTarget (SBCReferenceTargetData * dataPointer) Protected constructor. |
|
| void | removeAllReferenceOwners () Stops all the reference owners from referencing this reference target. |
Detailed Description#
This class describes a structural conformation, i.e.
a set of positions of atoms. In SAMSON, the user may name and save a structural conformation. Stored conformations appear in the document view, and the user may thus restore structural conformations by right-clicking on them.
Short name: SBConformation
See also: SBDDocument
Public Functions Documentation#
function SBMStructuralModelConformation [1/2]#
Constructs a structural model conformation.
Constructs a structural model conformation with the default name "Conformation" and an empty node indexer.
This default constructor delegates to the named constructor.
function SBMStructuralModelConformation [2/2]#
Constructs a structural model conformation with name name from the nodes innodeIndexer .
SBMStructuralModelConformation::SBMStructuralModelConformation (
const std::string & name,
const SBNodeIndexer & nodeIndexer,
SBVector< SBPosition3 > * positionData=nullptr,
const SBQuantity::energy & energy=SBQuantity::energy::zero,
const SBQuantity::time & time=SBQuantity::time::zero,
SBVector< SBVelocity3 > * velocityData=nullptr,
SBVector< SBForce3 > * forceData=nullptr
)
Constructs a structural model conformation with the given name, node indexer, and optional data.
Parameters:
nameThe name of the conformation.nodeIndexerThe node indexer describing the nodes included in the conformation.positionDataOptional pointer to a vector of atom positions. May be nullptr.energyThe energy value of the conformation. Defaults to zero.timeThe time value of the conformation. Defaults to zero.velocityDataOptional pointer to a vector of atom velocities. May be nullptr.forceDataOptional pointer to a vector of atom forces. May be nullptr.
function addAtom#
Adds a atom with positionatomPosition .
Adds an atom with a specified position to the conformation.
The atom is appended to the end of the atom list.
Parameters:
atomPointer to the atom to add.atomPositionPosition of the atom to be stored.
Returns:
true if the atom was added successfully, otherwise false.
function clearSourceFileName#
Clears the name of the file associated to the conformation.
Clears the source file name associated with the conformation.
After calling this function, the conformation will no longer have a source file name set.
function clone#
Returns a copy of the node and its descendants.
Creates a copy of this conformation and its descendants.
The cloned object is a new instance that duplicates the original conformation's data.
Returns:
Pointer to the newly created conformation.
Implements SBDDataGraphNode::clone
function createStructuralModels#
Create structural models corresponding to all steps.
virtual void SBMStructuralModelConformation::createStructuralModels (
SBNodeIndexer & structuralModelIndexer
) const
Creates structural model nodes corresponding to this conformation and adds them to the provided indexer.
Parameters:
structuralModelIndexerIndexer to which the newly created structural model nodes will be added.
function forEachNodeDepthFirst [1/2]#
Performs the action on this conformation.
virtual void SBMStructuralModelConformation::forEachNodeDepthFirst (
void(*)( SBDDataGraphNode *node) action
) override
Executes a callback for this conformation in a depth-first traversal.
The provided function pointer is invoked with this node as its argument.
Parameters:
actionFunction pointer to be called for each node.
Implements SBDDataGraphNode::forEachNodeDepthFirst
function forEachNodeDepthFirst [2/2]#
Performs the object 'saction on this conformation.
virtual void SBMStructuralModelConformation::forEachNodeDepthFirst (
SBCClass * object,
void(SBCClass::*)( SBDDataGraphNode *node) action
) override
Executes a member function callback for this conformation in a depth-first traversal.
The specified member function of the given object is invoked with this node as its argument.
Parameters:
objectPointer to the object whose member function will be called.actionPointer to the member function to invoke for each node.
Implements SBDDataGraphNode::forEachNodeDepthFirst
function getAtomIndexer#
Returns the indexer of atoms for which a position is saved.
Returns a pointer to the atom indexer used by this conformation.
The returned pointer may be null if no atom indexer is present.
Returns:
Pointer to the atom indexer, or nullptr.
function getEnergy#
Returns the energy data.
Retrieves the energy value associated with the conformation.
Returns:
The energy of the conformation.
function getForce [1/2]#
Retrieves the force of atom atomIndex and stores it inforce .
virtual bool SBMStructuralModelConformation::getForce (
unsigned int atomIndex,
SBForce3 & force
) const
Retrieves the force applied to an atom by its index.
Parameters:
atomIndexIndex of the atom whose force is requested.atomForceOutput parameter that receives the force of the atom.
Returns:
true if the force data exists and the index is valid; false otherwise.
function getForce [2/2]#
Retrieves the force of atom atom and stores it inforce .
Retrieves the force applied to a specific atom.
Parameters:
atomPointer to the atom whose force is requested.atomForceOutput parameter that receives the force of the atom.
Returns:
true if the force data exists for the atom; false otherwise.
function getForceData#
Returns the force data.
Retrieves the force data vector for the conformation.
Returns:
Pointer to the vector of forces, or nullptr if no force data is stored.
function getNextConformation#
Returns the next conformation in the document.
Returns the next conformation in the document sequence.
Traverses the linked list of nodes to find the next node that is a conformation.
Returns:
Pointer to the next conformation, or nullptr if none exists.
function getNodes [1/2]#
Collects nodes into nodeIndexer , based on anodeType , a selection status and avisitPredicate , with or without dependencies.
virtual void SBMStructuralModelConformation::getNodes (
SBNodeIndexer & nodeIndexer,
SBNode::Type nodeType,
bool selectedNodesOnly=false,
const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(),
bool includeDependencies=false
) override const
Collects nodes of a specified type into an indexer.
The function adds this conformation and optionally its dependent atoms to the provided node indexer based on the given criteria.
Parameters:
nodeIndexerContainer that will receive the collected nodes.nodeTypeThe type of nodes to collect.selectedNodesOnlyIf true, only selected nodes are collected.visitPredicatePredicate that determines whether this node should be visited.includeDependenciesIf true, dependent nodes (e.g., atoms) are also collected.
Implements SBDDataGraphNode::getNodes
function getNodes [2/2]#
Collects nodes into nodeIndexer , based on aselectionPredicate and avisitPredicate , with or without dependencies.
virtual void SBMStructuralModelConformation::getNodes (
SBNodeIndexer & nodeIndexer,
const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(),
const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(),
bool includeDependencies=false
) override const
Collects nodes based on selection and visit predicates into an indexer.
The function adds this conformation and optionally its dependent atoms to the provided node indexer according to the supplied predicates.
Parameters:
nodeIndexerContainer that will receive the collected nodes.selectionPredicatePredicate that selects nodes to be added.visitPredicatePredicate that determines whether this node should be visited.includeDependenciesIf true, dependent nodes are also collected.
Implements SBDDataGraphNode::getNodes
function getNumberOfAtoms#
Returns the number of atoms for which a position is saved.
Returns the number of atoms stored in the conformation.
Returns:
The count of atoms.
function getPosition [1/2]#
Retrieves the position of atom atomIndex and stores it inatomPosition .
bool SBMStructuralModelConformation::getPosition (
unsigned int atomIndex,
SBPosition3 & atomPosition
) const
Retrieves the position of the atom at the given index.
Parameters:
atomIndexIndex of the atom whose position is requested.atomPositionOutput parameter that receives the atom's position.
Returns:
true if the position was retrieved successfully, otherwise false.
function getPosition [2/2]#
Retrieves the position of atom atom and stores it inatomPosition .
bool SBMStructuralModelConformation::getPosition (
SBAtom * atom,
SBPosition3 & atomPosition
) const
Retrieves the position of the specified atom.
Parameters:
atomPointer to the atom whose position is requested.atomPositionOutput parameter that receives the atom's position.
Returns:
true if the position was retrieved successfully, otherwise false.
function getPositionData#
Returns the position data.
Returns the position data vector associated with the conformation.
Returns:
Pointer to the vector of atom positions.
function getPreviousConformation#
Returns the previous conformation in the document.
Returns the previous conformation in the document sequence.
Traverses the linked list of nodes to find the preceding node that is a conformation.
Returns:
Pointer to the previous conformation, or nullptr if none exists.
function getSourceFileName#
Returns the name of the file associated to the conformation.
Returns the source file name associated with the conformation.
If a source file name has not been set, the default structural model conformation source file name is returned.
Returns:
Reference to the source file name string.
function getTime#
Returns the time data.
Retrieves the time value associated with the conformation.
Returns:
The time of the conformation.
function getType#
Returns the data graph node type.
Returns the type identifier of this data graph node.
The returned value indicates that this node is a conformation.
Returns:
The node type enumeration value.
Implements SBDDataGraphNode::getType
function getVelocity [1/2]#
Retrieves the velocity of atom atomIndex and stores it invelocity .
virtual bool SBMStructuralModelConformation::getVelocity (
unsigned int atomIndex,
SBVelocity3 & velocity
) const
Retrieves the velocity of an atom by its index.
Parameters:
atomIndexIndex of the atom whose velocity is requested.atomVelocityOutput parameter that receives the velocity of the atom.
Returns:
true if the velocity data exists and the index is valid; false otherwise.
function getVelocity [2/2]#
Retrieves the velocity of atom atom and stores it invelocity .
virtual bool SBMStructuralModelConformation::getVelocity (
SBAtom * atom,
SBVelocity3 & velocity
) const
Retrieves the velocity of a specific atom.
Parameters:
atomPointer to the atom whose velocity is requested.atomVelocityOutput parameter that receives the velocity of the atom.
Returns:
true if the velocity data exists for the atom; false otherwise.
function getVelocityData#
Returns the velocity data.
Retrieves the velocity data vector for the conformation.
Returns:
Pointer to the vector of velocities, or nullptr if no velocity data is stored.
function hasNode [1/2]#
Checks for nodes based on a nodeType , a selection status and avisitPredicate , with or without dependencies.
virtual bool SBMStructuralModelConformation::hasNode (
SBNode::Type nodeType,
bool selectedNodesOnly=false,
const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(),
bool includeDependencies=false
) override const
Checks whether a node of the specified type exists in the conformation.
The check can be limited to selected nodes and may include dependent nodes.
Parameters:
nodeTypeThe type of node to search for.selectedNodesOnlyIf true, only selected nodes are considered.visitPredicatePredicate that determines whether this node should be visited.includeDependenciesIf true, dependent nodes are also considered.
Returns:
true if a matching node is found, otherwise false.
Implements SBDDataGraphNode::hasNode
function hasNode [2/2]#
Checks for nodes based on a selectionPredicate and avisitPredicate , with or without dependencies.
virtual bool SBMStructuralModelConformation::hasNode (
const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(),
const SBNodePredicate & visitPredicate=SBDDataGraphNode::All(),
bool includeDependencies=false
) override const
Checks whether any node satisfying the given selection predicate exists in the conformation.
The check may also include dependent nodes based on the provided flag.
Parameters:
selectionPredicatePredicate that selects nodes to be checked.visitPredicatePredicate that determines whether this node should be visited.includeDependenciesIf true, dependent nodes are also considered.
Returns:
true if a matching node is found, otherwise false.
Implements SBDDataGraphNode::hasNode
function hasSourceFileName#
Returns true when the conformation has the source file name set.
Checks whether a source file name is set for the conformation.
Returns:
true if a source file name is set, false otherwise.
function insertAtom#
Inserts a atom with positionatomPosition at indexatomIndex .
bool SBMStructuralModelConformation::insertAtom (
unsigned int atomIndex,
SBAtom * atom,
const SBPosition3 & atomPosition
)
Inserts an atom at a specified index with a given position.
The atom is placed at the provided index, shifting subsequent atoms as needed.
Parameters:
atomIndexIndex at which to insert the atom.atomPointer to the atom to insert.atomPositionPosition of the atom to be stored.
Returns:
true if the insertion succeeded, otherwise false.
function isSerializable#
Returns true __
Indicates whether the conformation can be serialized.
Returns:
True, indicating that the conformation is serializable.
Implements SBDDataGraphNode::isSerializable
function print#
Prints the conformation.
Prints a textual representation of the conformation to standard output.
Parameters:
offsetNumber of indentation levels to prepend to each printed line.
Implements SBDDataGraphNode::print
function removeAtom#
Removes an atom from the conformation.
Removes the specified atom from the conformation.
The atom is removed from the internal atom list and its position data is discarded.
Parameters:
atomPointer to the atom to remove.
Returns:
true if the atom was removed successfully, otherwise false.
function restore#
Restores the conformation.
Restores the positions of all atoms in the conformation to the stored values.
The function iterates over each atom in the conformation and sets its position to the stored position data.
function serialize#
Serializes the conformation.
virtual void SBMStructuralModelConformation::serialize (
SBCSerializer * serializer,
const SBNodeIndexer & nodeIndexer,
const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override const
Serializes the conformation to the given serializer.
Serializes the conformation data, handling version-specific formats and writing atom information, positions, energy, time, velocities, and forces.
Parameters:
serializerThe serializer used to write the conformation data.nodeIndexerThe node indexer used to map nodes to their indices for serialization.sdkVersionNumberThe SDK version number for versioned serialization.classVersionNumberThe class version number for versioned serialization.
Implements SBDDataGraphNode::serialize
function setEnergy#
Sets the energy data.
Sets the energy value for the conformation.
Parameters:
energyEnergy value to assign to the conformation.
function setForce [1/2]#
Sets the force of atom atomIndex toforce .
virtual bool SBMStructuralModelConformation::setForce (
unsigned int atomIndex,
const SBForce3 & force
)
Sets the force applied to an atom specified by its index.
Parameters:
atomIndexIndex of the atom to modify.atomForceNew force for the atom.
Returns:
true if the index is valid and the force was set; false otherwise.
function setForce [2/2]#
Sets the force of atom atom toforce .
Sets the force applied to a specific atom.
Parameters:
atomPointer to the atom whose force is to be set.atomForceNew force for the atom.
Returns:
true if the atom is part of the conformation and the force was set; false otherwise.
function setForceData#
Sets the force data.
Sets the force data vector for the conformation.
Parameters:
forceDataPointer to a vector of forces to associate with the conformation.
function setPosition [1/2]#
Sets the position of atom atomIndex and stores it inatomPosition .
bool SBMStructuralModelConformation::setPosition (
unsigned int atomIndex,
const SBPosition3 & atomPosition
)
Sets the position of an atom specified by its index.
Parameters:
atomIndexIndex of the atom to modify.atomPositionNew position for the atom.
Returns:
true if the atom index is valid and the position was set; false otherwise.
function setPosition [2/2]#
Sets the position of atom atom and stores it inatomPosition .
bool SBMStructuralModelConformation::setPosition (
SBAtom * atom,
const SBPosition3 & atomPosition
)
Sets the position of a specific atom.
Parameters:
atomPointer to the atom whose position is to be set.atomPositionNew position for the atom.
Returns:
true if the atom is part of the conformation and the position was set; false otherwise.
function setPositionData#
Sets the position data.
virtual void SBMStructuralModelConformation::setPositionData (
SBVector< SBPosition3 > * positionData
)
Sets the position data vector for the conformation.
Parameters:
positionDataPointer to the new position data vector.
function setSourceFileName#
Sets the name of the file associated to the conformation.
Sets the source file name for the conformation.
The provided file name becomes the new source file name associated with this conformation.
Parameters:
fileNameThe name of the source file to set.
function setTime#
Sets the time data.
Sets the time value for the conformation.
Parameters:
timeTime value to assign to the conformation.
function setVelocity [1/2]#
Sets the velocity of atom atomIndex tovelocity .
virtual bool SBMStructuralModelConformation::setVelocity (
unsigned int atomIndex,
const SBVelocity3 & velocity
)
Sets the velocity of an atom specified by its index.
Parameters:
atomIndexIndex of the atom to modify.atomVelocityNew velocity for the atom.
Returns:
true if the index is valid and the velocity was set; false otherwise.
function setVelocity [2/2]#
Sets the velocity of atom atom tovelocity .
virtual bool SBMStructuralModelConformation::setVelocity (
SBAtom * atom,
const SBVelocity3 & velocity
)
Sets the velocity of a specific atom.
Parameters:
atomPointer to the atom whose velocity is to be set.atomVelocityNew velocity for the atom.
Returns:
true if the atom is part of the conformation and the velocity was set; false otherwise.
function setVelocityData#
Sets the velocity data.
virtual void SBMStructuralModelConformation::setVelocityData (
SBVector< SBVelocity3 > * velocityData
)
Sets the velocity data vector for the conformation.
Parameters:
velocityDataPointer to a vector of velocities to associate with the conformation.
function unserialize#
Unserializes the conformation.
virtual void SBMStructuralModelConformation::unserialize (
SBCSerializer * serializer,
const SBNodeIndexer & nodeIndexer,
const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override
Unserializes the conformation from the given serializer.
Parameters:
serializerThe serializer used to read the conformation data.nodeIndexerThe node indexer used to map indices back to nodes during deserialization.sdkVersionNumberThe SDK version number for versioned deserialization.classVersionNumberThe class version number for versioned deserialization.
Implements SBDDataGraphNode::unserialize
function ~SBMStructuralModelConformation#
Destructs the conformation.
Destroys the structural model conformation and emits a node deletion begin event.