Web Analytics Made Easy - Statcounter
Skip to content

Class SBDDocument#

ClassList > SBDDocument

This class describes a document. More...

  • #include <SBDDocument.hpp>

Inherits the following classes: SBDDocumentFolder

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
SBDDocument ()
Constructs a document.
SBDDocument (const std::string & fileName)
Constructs a document with name name .
SB_DECLARE_DATA (SBDDocument)
void addGroupNodesToSelection (SBNodeGroup * group) const
Adds the group nodes to the document selection.
void addNodeToSelection (SBNode * node)
Adds a node to the selection.
void clearHighlighting ()
Clears the highlighting.
void clearSelection ()
Clears the selection.
virtual SBDDocument * clone () override
Returns a copy of the node and its descendants.
SBNodeGroup * createGroup (const std::string & name, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate & visitPredicate=SBDDataGraphNode::All())
Create a group with name name based on aselectionPredicate and avisitPredicate .
SBDDocumentCamera * getActiveCamera () const
Returns the active camera.
SBDDocumentPresentation * getActivePresentation () const
Returns the active presentation.
SBStructuralModel * getActiveStructuralModel () const
Returns the active structural model.
std::string getFileName () const
Returns the name of the file associated to the document.
SBDDocument * getNextDocument () const
Returns the next document.
unsigned int getNumberOfSelectedNodes (const SBProxy * proxy) const
Returns the number of selected nodes corresponding to a given proxy .
unsigned int getNumberOfSelectedNodes (const SBUUID & classUUID, const SBUUID & extensionUUID) const
Returns the number of selected nodes corresponding to a given classUUID andextensionUUID .
SBDDocument * getPreviousDocument () const
Returns the previous document.
SBPointerIndexer< SBNode > const * getSelectedNodes () const
Returns the indexer of selected nodes.
void getSelectedNodes (SBNodeIndexer & nodeIndexer, SBNode::Type type) const
Returns an indexer of selected nodes of a given type .
void getSelectedNodes (SBNodeIndexer & nodeIndexer, const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All()) const
Returns an indexer of selected nodes satisfying a given selectionPredicate .
virtual SBNode::Type getType () override const
Returns the data graph node type.
SBNodeGroup * groupSelection (const std::string & name)
Stores the selected nodes into a group with name name .
void intersectGroupNodesWithSelection (SBNodeGroup * group) const
Keeps in the document selection only the nodes stored in this group.
bool isSaved ()
Returns whether the document is saved.
virtual bool isSerializable () override const
Returns true.
bool isTrusted ()
Returns whether the document is trusted.
virtual void print (unsigned int offset=0) override const
Prints the document.
void removeGroupNodesFromSelection (SBNodeGroup * group) const
Removes the group nodes from the document selection.
void removeNodeFromSelection (SBNode * node)
Removes a node from the selection.
void selectGroupNodes (SBNodeGroup * group) const
Clears the document selection and select the group nodes.
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 document.
void setActiveCamera (SBCamera * documentCamera)
Sets the active camera.
void setActivePresentation (SBPresentation * activePresentation)
Sets the active presentation.
void setActiveStructuralModel (SBStructuralModel * structuralModel)
Sets the active structural model.
void setFileName (const std::string & name)
Sets the name of the file associated to the document.
void setSaved ()
Sets the document as saved.
void setTrusted ()
Sets the document as trusted.
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 document.
virtual ~SBDDocument ()
Destructs the document.

Public Functions inherited from SBDDocumentFolder#

See SBDDocumentFolder

Type Name
SBDDocumentFolder ()
Constructs a folder.
SBDDocumentFolder (const std::string & name)
Constructs a folder with name name .
SB_DECLARE_DATA (SBDDocumentFolder)
virtual bool addChild (SBNode * node, SBNode * nextNode=nullptr) override
Adds a child to the folder.
virtual bool canAddChild (const SBNode * node, const SBNode * nextNode=nullptr) override const
Returns whether this node can add node as a child.
virtual bool canAddChildType (SBNode::Type nodeType) override const
Returns whether this node can add a node with type nodeType as a child.
virtual bool canHaveDescendantType (SBNode::Type nodeType) override const
Returns whether this node can have a node with type nodeType as a descendant.
virtual SBDDocumentFolder * clone () override
Returns a copy of the node and its descendants.
void connectDocumentSignalToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDocumentEvent *) functionPointer, SBCReferenceTarget * nextReferenceTarget=0, void(SBCReferenceTarget::*)(SBDocumentEvent *) nextFunctionPointer=0)
Connects the document signal to a slot.
void disconnectDocumentSignalFromSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDocumentEvent *) functionPointer)
Disconnects the document signal from a slot.
bool documentSignalIsConnectedToSlot (SBCReferenceTarget * referenceTarget, void(SBCReferenceTarget::*)(SBDocumentEvent *) functionPointer) const
Returns true if and only if the document signal is connected to the slot.
virtual void forEachNodeDepthFirst (void(*)(SBNode *node) action) override
Performs action action on each node of this document.
virtual void forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBNode *node) action) override
Performs action action of objectobject on each node of this document.
SBPointerList< SBAnimation > const * getAnimationList () const
Returns the list of animations.
SBPointerList< SBAsset > const * getAssetList () const
Returns the list of assets.
SBPointerList< SBCamera > const * getCameraList () const
Returns the list of cameras.
SBPointerList< SBNode > const * getChildren () const
Returns the children of the folder.
SBPointerList< SBConformation > const * getConformationList () const
Returns the list of conformations.
SBPointerList< SBDController > const * getControllerList () const
Returns the list of controllers.
SBPointerList< SBMDynamicalModel > const * getDynamicalModelList () const
Returns the list of dynamical models.
SBPointerList< SBFile > const * getFileList () const
Returns the list of files.
SBPointerList< SBDDocumentFolder > const * getFolderList () const
Returns the list of folders.
SBPointerList< SBMInteractionModel > const * getInteractionModelList () const
Returns the list of interaction models.
SBPointerList< SBLabel > const * getLabelList () const
Returns the list of labels.
SBPointerList< SBLight > const * getLightList () const
Returns the list of lights.
virtual unsigned int getMaximumTransparency () override const
Returns the maximum transparency.
virtual unsigned int getMinimumOpacity () override const
Returns the minimum opacity.
SBPointerList< SBMModel > const * getModelList () const
Returns the list of models.
virtual SBQuantity::mass getMolecularWeight () override
Returns the molecular weight.
SBDDocumentFolder * getNextFolder () const
Returns the next folder.
SBPointerList< SBNodeGroup > const * getNodeGroupList () const
Returns the list of node groups.
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.
SBPointerList< SBNote > const * getNoteList () const
Returns the list of notes.
virtual unsigned int getNumberOfAtoms () override
Returns the number of atoms.
virtual unsigned int getNumberOfCarbons () override
Returns the number of carbons.
virtual unsigned int getNumberOfChains () override
Returns the number of chains.
virtual unsigned int getNumberOfCoarseGrainedAtoms () override
Returns the number of coarse-grained atoms.
virtual unsigned int getNumberOfHydrogens () override
Returns the number of hydrogens.
virtual unsigned int getNumberOfMolecules () override
Returns the number of molecules.
virtual unsigned int getNumberOfNitrogens () override
Returns the number of nitrogens.
virtual unsigned int getNumberOfOtherAtoms () override
Returns the number of other atoms.
virtual unsigned int getNumberOfOxygens () override
Returns the number of oxygens.
virtual unsigned int getNumberOfResidues () override
Returns the number of residues.
virtual unsigned int getNumberOfSegments () override
Returns the number of segments.
virtual unsigned int getNumberOfStructuralGroups () override
Returns the number of structural groups.
virtual unsigned int getNumberOfStructuralModels () override
Returns the number of structural models.
virtual unsigned int getNumberOfSulfurs () override
Returns the number of sulfurs.
virtual unsigned int getOpacity () override const
Returns the opacity.
SBPointerList< SBPath > const * getPathList () const
Returns the list of paths.
SBPointerList< SBPresentation > const * getPresentationList () const
Returns the list of presentations.
SBDDocumentFolder * getPreviousFolder () const
Returns the previous folder.
SBPointerList< SBMPropertyModel > const * getPropertyModelList () const
Returns the list of property models.
SBPointerList< SBRenderPreset > const * getRenderPresetList () const
Returns the list of render presets.
SBPointerList< SBSSimulator > const * getSimulatorList () const
Returns the list of Simulators.
SBPointerList< SBMStructuralModel > const * getStructuralModelList () const
Returns the list of structural models.
virtual int getSumOfFormalCharges () override
Returns the sum of formal charges.
virtual float getSumOfPartialCharges () override
Returns the sum of partial charges.
virtual unsigned int getTransparency () override const
Returns the transparency.
virtual SBDDataGraphNode::Type getType () override const
Returns the data graph node type.
SBPointerList< SBMVisualModel > const * getVisualModelList () const
Returns the list of visual models.
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.
virtual bool initialize ()
Initializes the folder.
virtual bool isSerializable () override const
Returns true.
virtual void print (unsigned int offset=0) override const
Prints the folder.
virtual bool removeChild (SBNode * node) override
Removes a child from the folder.
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 folder.
virtual void setOpacity (unsigned int opacity) override
Sets the opacity.
virtual void setTransparency (unsigned int transparency) override
Sets the transparency.
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 folder.
virtual ~SBDDocumentFolder ()
Destructs the folder.

Public Functions inherited from SBDDataGraphNode#

See SBDDataGraphNode

Type Name
SB_DECLARE_DATA (SBDDataGraphNode)
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 is node , or descends from it.
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.
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.
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 an action on each node.
virtual void forEachNodeDepthFirst (SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action)
Performs an action on each node.
virtual unsigned int getDefaultOpacity () const
Returns the default opacity.
virtual 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.
virtual unsigned int getMaximumOpacity () const
Returns the maximum opacity.
virtual unsigned int getMaximumTransparency () const
Returns the maximum transparency.
virtual unsigned int getMinimumOpacity () const
Returns the minimum opacity.
virtual 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.
virtual unsigned int getOpacitySingleStep () const
Returns the opacity single step.
virtual 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.
virtual unsigned int getTransparencySingleStep () const
Returns the transparency single step.
virtual 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 the nodeIndexer , or is the ancestor of one of them, or is a group that stores one of them.
virtual bool hasOpacityRange () const
Returns whether the node has the opacity range.
virtual 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 is node , 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 the nodeIndexer , 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 the nodePointerIndexer , 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 the nodeIndexer .
bool isOneOf (SBPointerIndexer< SBDDataGraphNode > * nodePointerIndexer) const
Returns true if and only if this node is one of the nodes of the nodePointerIndexer .
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 to type .
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#

See SBCReferenceTarget

Type Name
SBCReferenceTarget ()
unsigned int getMemoryFootprint () const
void printReferencesToOwners () const
virtual ~SBCReferenceTarget ()

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 an action for each node in a selection.
void forEachNodeInSelection (SBNodeIndexer & nodeIndexer, SBCClass * object, void(SBCClass::*)(SBDDataGraphNode *node) action)
Performs an action for each node in a selection.
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#

See SBCReferenceTarget

Type Name
SBCReferenceTargetData * dataPointer

Protected Functions inherited from SBDDocumentFolder#

See SBDDocumentFolder

Type Name
SBDDocumentFolder (SBDDocumentFolderData * dataPointer)
Builds a folder.

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#

See SBCReferenceTarget

Type Name
SBCReferenceTarget (SBCReferenceTargetData * dataPointer)
void removeAllReferenceOwners ()

Detailed Description#

This class describes a document. A document may contain folders, cameras, groups, conformations and paths.

SAMSON Extensions access the active document through SAMSON:

SBPointer<SBDocument> activeDocument = SAMSON::getActiveDocument();

The set of selected nodes is accessible from the document:

SBPointerIndexer<SBNode> const* selectedNodes = activeDocument->getSelectedNodes();

The index cannot be modified, because SAMSON needs to perform bookkeeping when managing selected nodes, so the selection is manipulated either by modifying the selection flag of a node:

atom->setSelectionFlag(true);                   // the atom is selected
atom->setSelectionFlag(false);                  // the atom is deselected
or by modifying the document selection itself:
document->addNodeToSelection(atom);             // the atom is selected
document->removeNodeFromSelection(atom);        // the atom is deselected

Whenever the selection flag of a node changes, through either one of these methods, a SelectionFlagChanged base signal is emitted by the node and the document (thus, adding a node twice to a selection, for example, emits a signal only once).

Note that you should always turn the Undo system on when modifying the selection:

SAMSON::beginHolding("Modify selection");       // turn the undo system on
SAMSON::getActiveDocument()->clearSelection();  // clear the selection
atom->setSelectionFlag(true);                   // the atom is selected
SAMSON::endHolding();                           // turn the undo system off
SAMSON::undo();                                 // go back to before clearing

Short name: SBDocument

See also: SBDDocumentFolder, SBCamera, SBDDataGraphNodeGroup, SBMStructuralModelConformation, SBMStructuralModelPath

See also: Signals and slots

Public Functions Documentation#

function SBDDocument [1/2]#

Constructs a document.

SBDDocument::SBDDocument () 


function SBDDocument [2/2]#

Constructs a document with name name .

SBDDocument::SBDDocument (
    const std::string & fileName
) 


function SB_DECLARE_DATA#

SBDDocument::SB_DECLARE_DATA (
    SBDDocument
) 

function addGroupNodesToSelection#

Adds the group nodes to the document selection.

void SBDDocument::addGroupNodesToSelection (
    SBNodeGroup * group
) const


function addNodeToSelection#

Adds a node to the selection.

void SBDDocument::addNodeToSelection (
    SBNode * node
) 


function clearHighlighting#

Clears the highlighting.

void SBDDocument::clearHighlighting () 


function clearSelection#

Clears the selection.

void SBDDocument::clearSelection () 


function clone#

Returns a copy of the node and its descendants.

virtual SBDDocument * SBDDocument::clone () override

Implements SBDDocumentFolder::clone


function createGroup#

Create a group with name name based on aselectionPredicate and avisitPredicate .

SBNodeGroup * SBDDocument::createGroup (
    const std::string & name,
    const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All (),
    const SBNodePredicate & visitPredicate=SBDDataGraphNode::All ()
) 

This function is undoable.

See also: SBDDataGraphNodeGroup


function getActiveCamera#

Returns the active camera.

SBDDocumentCamera * SBDDocument::getActiveCamera () const


function getActivePresentation#

Returns the active presentation.

SBDDocumentPresentation * SBDDocument::getActivePresentation () const


function getActiveStructuralModel#

Returns the active structural model.

SBStructuralModel * SBDDocument::getActiveStructuralModel () const


function getFileName#

Returns the name of the file associated to the document.

std::string SBDDocument::getFileName () const


function getNextDocument#

Returns the next document.

SBDDocument * SBDDocument::getNextDocument () const


function getNumberOfSelectedNodes [1/2]#

Returns the number of selected nodes corresponding to a given proxy .

unsigned int SBDDocument::getNumberOfSelectedNodes (
    const SBProxy * proxy
) const


function getNumberOfSelectedNodes [2/2]#

Returns the number of selected nodes corresponding to a given classUUID andextensionUUID .

unsigned int SBDDocument::getNumberOfSelectedNodes (
    const SBUUID & classUUID,
    const SBUUID & extensionUUID
) const


function getPreviousDocument#

Returns the previous document.

SBDDocument * SBDDocument::getPreviousDocument () const


function getSelectedNodes [1/3]#

Returns the indexer of selected nodes.

SBPointerIndexer< SBNode > const * SBDDocument::getSelectedNodes () const


function getSelectedNodes [2/3]#

Returns an indexer of selected nodes of a given type .

void SBDDocument::getSelectedNodes (
    SBNodeIndexer & nodeIndexer,
    SBNode::Type type
) const


function getSelectedNodes [3/3]#

Returns an indexer of selected nodes satisfying a given selectionPredicate .

void SBDDocument::getSelectedNodes (
    SBNodeIndexer & nodeIndexer,
    const SBNodePredicate & selectionPredicate=SBDDataGraphNode::All ()
) const


function getType#

Returns the data graph node type.

virtual SBNode::Type SBDDocument::getType () override const

Implements SBDDocumentFolder::getType


function groupSelection#

Stores the selected nodes into a group with name name .

SBNodeGroup * SBDDocument::groupSelection (
    const std::string & name
) 

This function is undoable.

See also: SBDDataGraphNodeGroup


function intersectGroupNodesWithSelection#

Keeps in the document selection only the nodes stored in this group.

void SBDDocument::intersectGroupNodesWithSelection (
    SBNodeGroup * group
) const


function isSaved#

Returns whether the document is saved.

bool SBDDocument::isSaved () 


function isSerializable#

Returns true.

virtual bool SBDDocument::isSerializable () override const

Implements SBDDocumentFolder::isSerializable


function isTrusted#

Returns whether the document is trusted.

bool SBDDocument::isTrusted () 


function print#

Prints the document.

virtual void SBDDocument::print (
    unsigned int offset=0
) override const

Implements SBDDocumentFolder::print


function removeGroupNodesFromSelection#

Removes the group nodes from the document selection.

void SBDDocument::removeGroupNodesFromSelection (
    SBNodeGroup * group
) const


function removeNodeFromSelection#

Removes a node from the selection.

void SBDDocument::removeNodeFromSelection (
    SBNode * node
) 


function selectGroupNodes#

Clears the document selection and select the group nodes.

void SBDDocument::selectGroupNodes (
    SBNodeGroup * group
) const


function serialize#

Serializes the document.

virtual void SBDDocument::serialize (
    SBCSerializer * serializer,
    const SBNodeIndexer & nodeIndexer,
    const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
    const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override const

Implements SBDDocumentFolder::serialize


function setActiveCamera#

Sets the active camera.

void SBDDocument::setActiveCamera (
    SBCamera * documentCamera
) 


function setActivePresentation#

Sets the active presentation.

void SBDDocument::setActivePresentation (
    SBPresentation * activePresentation
) 


function setActiveStructuralModel#

Sets the active structural model.

void SBDDocument::setActiveStructuralModel (
    SBStructuralModel * structuralModel
) 


function setFileName#

Sets the name of the file associated to the document.

void SBDDocument::setFileName (
    const std::string & name
) 


function setSaved#

Sets the document as saved.

void SBDDocument::setSaved () 


function setTrusted#

Sets the document as trusted.

void SBDDocument::setTrusted () 


function unserialize#

Unserializes the document.

virtual void SBDDocument::unserialize (
    SBCSerializer * serializer,
    const SBNodeIndexer & nodeIndexer,
    const SBVersionNumber & sdkVersionNumber=SB_SDK_VERSION_NUMBER,
    const SBVersionNumber & classVersionNumber=SBVersionNumber (1, 0, 0)
) override

Implements SBDDocumentFolder::unserialize


function ~SBDDocument#

Destructs the document.

virtual SBDDocument::~SBDDocument ()