SBMStructuralModelPath Class Reference

This class describes a structural path. More...

Public Types

enum  AnimationType {
  Once,
  Loop,
  Bounce
}
 Animation type. More...
 
- 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,
  DocumentLayer,
  Layer,
  DocumentCamera,
  Camera,
  DocumentLabel,
  Label,
  DataGraphNodeGroup,
  NodeGroup,
  Controller,
  ControllerNode
}
 The type of the data graph node. More...
 

Constructors and destructors

 SBMStructuralModelPath ()
 Constructs a structural model path.
 
 SBMStructuralModelPath (const std::string &name, const SBNodeIndexer &nodeIndexer, unsigned int numberOfSteps=0, SBPosition3 *positionArray=0, SBQuantity::energy *energyArray=0, SBQuantity::time *timeArray=0, SBVelocity3 *velocityArray=0, SBForce3 *forceArray=0)
 Constructs a structural model path with name name from the nodes in nodeIndexer.
 
virtual ~SBMStructuralModelPath ()
 Destructs the path.
 

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 path.
 
virtual void unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0))
 Unserializes the path.
 

Topology

virtual SBNodegetParent () const
 Returns the document which owns the path.
 
virtual SBMStructuralModelPathclone ()
 Returns a copy of the node and its descendants.
 

Identity

virtual SBNode::Type getType () const
 Returns the data graph node type.
 
std::string const & getName () const
 Returns the name of the path.
 
void setName (const std::string &n)
 Sets the name of the path.
 
SBDDocumentgetDocument () const
 Returns the document which owns the path.
 
SBMStructuralModelPathgetNextPath () const
 Returns the next path in the document.
 
SBMStructuralModelPathgetPreviousPath () const
 Returns the previous path in the document.
 

Selection

virtual void getNodes (SBNodeIndexer &nodeIndexer, const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false)
 Returns some nodes.
 

Visitor

virtual void forEachNodeDepthFirst (void(*action)(SBDDataGraphNode *node))
 Performs action action on each node of this document.
 
virtual void forEachNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node))
 Performs action action of object object on each node of this document.
 

Indexer

SBPointerIndexer< SBStructuralParticle > const * getStructuralParticleIndexer () const
 Returns the indexer of structural particles for which a position is saved.
 

Steps

virtual unsigned int getNumberOfSteps () const
 Returns the number of steps in the path.
 
virtual void setNumberOfSteps (unsigned int numberOfSteps)
 Sets the number of steps in the path.
 

Smoothing

virtual unsigned int getSmoothingWindowSize () const
 Returns the size of the smoothing window.
 
virtual void setSmoothingWindowSize (unsigned int smoothingWindowSize)
 Sets the size of the smoothing window.
 

Positions

virtual SBPosition3getPositionArray () const
 Returns the position array.
 
virtual void setPositionArray (SBPosition3 *positionArray)
 Sets the position array.
 
virtual void getPosition (unsigned int step, unsigned int structuralParticleIndex, SBPosition3 &position) const
 Retrieves the position of structural particle structuralParticleIndex and stores it in position for a specific step.
 
virtual void getPosition (unsigned int step, SBStructuralParticle *structuralParticle, SBPosition3 &position) const
 Retrieves the position of structural particle structuralParticle and stores it in position for a specific step.
 
virtual void setPosition (unsigned int step, unsigned int structuralParticleIndex, const SBPosition3 &position)
 Sets the position of structural particle structuralParticleIndex to position for a specific step.
 
virtual void setPosition (unsigned int step, SBStructuralParticle *structuralParticle, const SBPosition3 &position)
 Sets the position of structural particle structuralParticle to position for a specific step.
 

Energy

virtual SBQuantity::energygetEnergyArray () const
 Returns the energy array.
 
virtual void setEnergyArray (SBQuantity::energy *energyArray)
 Sets the energy array.
 
virtual void getEnergy (unsigned int step, SBQuantity::energy &energy) const
 Retrieves the energy for a specific step.
 
virtual void setEnergy (unsigned int step, const SBQuantity::energy &energy)
 Sets the energy for a specific step.
 

Time

virtual SBQuantity::timegetTimeArray () const
 Returns the time array.
 
virtual void setTimeArray (SBQuantity::time *timeArray)
 Sets the time array.
 
virtual void getTime (unsigned int step, SBQuantity::time &time) const
 Retrieves the time for a specific step.
 
virtual void setTime (unsigned int step, const SBQuantity::time &time)
 Sets the time for a specific step.
 

Velocities

virtual SBVelocity3getVelocityArray () const
 Returns the velocity array.
 
virtual void setVelocityArray (SBVelocity3 *velocityArray)
 Sets the velocity array.
 
virtual void getVelocity (unsigned int step, unsigned int structuralParticleIndex, SBVelocity3 &velocity) const
 Retrieves the velocity of structural particle structuralParticleIndex and stores it in velocity for a specific step.
 
virtual void getVelocity (unsigned int step, SBStructuralParticle *structuralParticle, SBVelocity3 &velocity) const
 Retrieves the velocity of structural particle structuralParticle and stores it in velocity for a specific step.
 
virtual void setVelocity (unsigned int step, unsigned int structuralParticleIndex, const SBVelocity3 &velocity)
 Sets the velocity of structural particle structuralParticleIndex to velocity for a specific step.
 
virtual void setVelocity (unsigned int step, SBStructuralParticle *structuralParticle, const SBVelocity3 &velocity)
 Sets the velocity of structural particle structuralParticle to velocity for a specific step.
 

Forces

virtual SBForce3getForceArray () const
 Returns the force array.
 
virtual void setForceArray (SBForce3 *forceArray)
 Sets the force array.
 
virtual void getForce (unsigned int step, unsigned int structuralParticleIndex, SBForce3 &force) const
 Retrieves the force of structural particle structuralParticleIndex and stores it in force for a specific step.
 
virtual void getForce (unsigned int step, SBStructuralParticle *structuralParticle, SBForce3 &force) const
 Retrieves the force of structural particle structuralParticle and stores it in force for a specific step.
 
virtual void setForce (unsigned int step, unsigned int structuralParticleIndex, const SBForce3 &force)
 Sets the force of structural particle structuralParticleIndex to force for a specific step.
 
virtual void setForce (unsigned int step, SBStructuralParticle *structuralParticle, const SBForce3 &force)
 Sets the force of structural particle structuralParticle to force for a specific step.
 

Animation

virtual unsigned int getCurrentStep () const
 Returns the current step along the path.
 
virtual void setCurrentStep (unsigned int currentStep)
 Sets the current step along the path.
 
virtual bool getAnimationFlag () const
 Returns the animation flag.
 
virtual void setAnimationFlag (bool animationFlag)
 Sets the animation flag.
 
virtual AnimationType getAnimationType () const
 Returns the animation type.
 
virtual void setAnimationType (AnimationType animationType)
 Sets the animation type.
 
virtual SBQuantity::second const & getStepDuration () const
 Returns the step duration.
 
virtual void setStepDuration (const SBQuantity::second &stepDuration)
 Sets the step duration.
 
virtual bool getForwardFlag () const
 Returns the forward flag, which indicates when the animation is moving forward.
 
virtual void setForwardFlag (bool forwardFlag)
 Sets the forward flag, which indicates when the animation is moving forward.
 
virtual void updateState ()
 Updates the state along the path according to the animation parameters.
 

Current

virtual SBQuantity::energy getCurrentEnergy () const
 Returns the current energy.
 
virtual SBQuantity::time getCurrentTime () const
 Returns the current time.
 

Debugging

void print (unsigned int offset=0) const
 Prints the path.
 

Additional Inherited Members

- Public Member Functions inherited from SBDDataGraphNode
SBDDataGraphNodegetThisNode () const
 Returns the pointer to this node. 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 isOneOf (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer. 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...
 
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...
 
SBDDataGraphNodeMaterialgetMaterial () const
 Returns the material. More...
 
SBDDataGraphNodegetMaterialOwner () 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 SBDDataGraphNode
static SBDDataGraphNodegetNode (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 SBDDataGraphNode
 SBDDataGraphNode ()
 Builds a data graph node. More...
 
 SBDDataGraphNode (SBDDataGraphNodeData *dataPointer)
 Builds a data graph node.
 
virtual ~SBDDataGraphNode ()
 Destroys the node. More...
 

Detailed Description

This class describes a structural conformation, i.e. a set of positions of structural particles. 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: SBPath

See also
SBDDocument

Member Enumeration Documentation

◆ AnimationType

Enumerator
Once 

The bond type.

Loop 

The single bond type.

Bounce 

The double bond type.