|
| | mitkClassMacro (StandaloneDataStorage, mitk::DataStorage) |
| |
| Pointer | Clone () const |
| |
| void | Add (mitk::DataNode *node, const mitk::DataStorage::SetOfObjects *parents=nullptr) override |
| | Add a DataNode to the storage, optionally with parent (source) nodes. More...
|
| |
| void | Remove (const mitk::DataNode *node) override |
| | Remove a node from the StandaloneDataStorage. More...
|
| |
| bool | Exists (const mitk::DataNode *node) const override |
| | Check whether a node exists in this StandaloneDataStorage. More...
|
| |
| SetOfObjects::ConstPointer | GetSources (const mitk::DataNode *node, const NodePredicateBase *condition=nullptr, bool onlyDirectSources=true) const override |
| | Return the source (parent) nodes of a given node, optionally filtered. More...
|
| |
| SetOfObjects::ConstPointer | GetDerivations (const mitk::DataNode *node, const NodePredicateBase *condition=nullptr, bool onlyDirectDerivations=true) const override |
| | Return the derived (child) nodes of a given node, optionally filtered. More...
|
| |
| SetOfObjects::ConstPointer | GetAll () const override |
| | Return all nodes managed by this StandaloneDataStorage. More...
|
| |
| virtual void | Add (DataNode *node, const DataStorage::SetOfObjects *parents=nullptr)=0 |
| | Add a DataNode to the storage, optionally with parent (source) nodes. More...
|
| |
| void | Add (DataNode *node, DataNode *parent) |
| | Convenience method to add a node with a single parent. More...
|
| |
| void | Add (DataNode *node, const ConstSetOfObjects *parents) |
| | Convenience overload for callers that hold only const node pointers for the parents. More...
|
| |
| | mitkClassMacroItkParent (DataStorage, itk::Object) |
| |
| void | Add (DataNode *node, DataNode *parent) |
| | Convenience method to add a node with a single parent. More...
|
| |
| void | Add (DataNode *node, const ConstSetOfObjects *parents) |
| | Convenience overload for callers that hold only const node pointers for the parents. More...
|
| |
| void | Remove (const DataStorage::SetOfObjects *nodes) |
| | Remove a set of nodes from the DataStorage. More...
|
| |
| void | Remove (const ConstSetOfObjects *nodes) |
| | Remove a set of const-pointer nodes from the DataStorage. More...
|
| |
| SetOfObjects::ConstPointer | GetSubset (const NodePredicateBase *condition) const |
| | Return all nodes that satisfy the given predicate condition. More...
|
| |
| DataNode * | GetNode (const NodePredicateBase *condition=nullptr) const |
| | Convenience method to get the first node that matches the predicate condition. More...
|
| |
| DataNode * | GetNamedNode (const char *name) const |
| | Convenience method to get the first node with a given name. More...
|
| |
| DataNode * | GetNamedNode (const std::string &name) const |
| | Convenience method to get the first node with a given name (std::string overload). More...
|
| |
| DataNode * | GetNamedDerivedNode (const char *name, const DataNode *sourceNode, bool onlyDirectDerivations=true) const |
| | Convenience method to get the first node with a given name that is derived from a source node. More...
|
| |
| template<class DataType > |
| DataType * | GetNamedObject (const char *name) const |
| | Convenience method to get the first data object of a given type with a given name. More...
|
| |
| template<class DataType > |
| DataType * | GetNamedObject (const std::string &name) const |
| | Convenience method to get the first data object of a given type with a given name (std::string overload). More...
|
| |
| template<class DataType > |
| DataType * | GetNamedDerivedObject (const char *name, const DataNode *sourceNode, bool onlyDirectDerivations=true) const |
| | Convenience method to get the first data object of a given type with a given name, derived from a source node. More...
|
| |
| std::string | GetUniqueName (const std::string &name, const DataNode *sourceNode=nullptr, bool onlyDirectDerivations=true) const |
| | Generate a unique node name by appending an incrementing number if necessary. More...
|
| |
| const DataNode::GroupTagList | GetGroupTags () const |
| | Return all group tags used across all nodes in the DataStorage. More...
|
| |
| TimeGeometry::ConstPointer | ComputeBoundingGeometry3D (const SetOfObjects *input, const char *boolPropertyKey=nullptr, const BaseRenderer *renderer=nullptr, const char *boolPropertyKey2=nullptr) const |
| | Compute the axis-parallel bounding geometry encompassing the given set of nodes. More...
|
| |
| TimeGeometry::ConstPointer | ComputeBoundingGeometry3D (const ConstSetOfObjects *input, const char *boolPropertyKey=nullptr, const BaseRenderer *renderer=nullptr, const char *boolPropertyKey2=nullptr) const |
| | Compute the axis-parallel bounding geometry for a set of const node pointers. More...
|
| |
| TimeGeometry::ConstPointer | ComputeBoundingGeometry3D (const char *boolPropertyKey=nullptr, const BaseRenderer *renderer=nullptr, const char *boolPropertyKey2=nullptr) const |
| | Compute the axis-parallel bounding geometry of all nodes in the DataStorage. More...
|
| |
| TimeGeometry::ConstPointer | ComputeVisibleBoundingGeometry3D (const BaseRenderer *renderer=nullptr, const char *boolPropertyKey=nullptr) |
| | Compute the axis-parallel bounding geometry of all visible nodes. More...
|
| |
| BoundingBox::Pointer | ComputeBoundingBox (const char *boolPropertyKey=nullptr, const BaseRenderer *renderer=nullptr, const char *boolPropertyKey2=nullptr) |
| | Compute the axis-parallel bounding box of all nodes in the DataStorage. More...
|
| |
| BoundingBox::Pointer | ComputeVisibleBoundingBox (const BaseRenderer *renderer=nullptr, const char *boolPropertyKey=nullptr) |
| | Compute the bounding box of all visible nodes. More...
|
| |
| TimeBounds | ComputeTimeBounds (const char *boolPropertyKey, const BaseRenderer *renderer, const char *boolPropertyKey2) |
| | Compute the time bounds of all nodes in the DataStorage. More...
|
| |
| TimeBounds | ComputeTimeBounds (const BaseRenderer *renderer, const char *boolPropertyKey) |
| | Compute the time bounds of all visible nodes. More...
|
| |
| void | BlockNodeModifiedEvents (bool block) |
| | Enable or disable suppression of ChangedNodeEvent emission. More...
|
| |
|
| | StandaloneDataStorage () |
| |
| | ~StandaloneDataStorage () override |
| |
| bool | IsInitialized () const |
| | convenience method to check if the object has been initialized (i.e. a data tree has been set) More...
|
| |
| SetOfObjects::ConstPointer | GetRelations (const mitk::DataNode *node, const AdjacencyList &relation, const NodePredicateBase *condition=nullptr, bool onlyDirectlyRelated=true) const |
| | Traverses the Relation graph and extracts a list of related elements (e.g. Sources or Derivations) More...
|
| |
| void | RemoveFromRelation (const mitk::DataNode *node, AdjacencyList &relation) |
| | deletes all references to a node in a given relation (used in Remove() and TreeListener) More...
|
| |
| void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
| | Prints the contents of the StandaloneDataStorage to os. Do not call directly, call ->Print() instead. More...
|
| |
| void | EmitAddNodeEvent (const DataNode *node) |
| | EmitAddNodeEvent emits the AddNodeEvent. More...
|
| |
| void | EmitRemoveNodeEvent (const DataNode *node) |
| | EmitRemoveNodeEvent emits the RemoveNodeEvent. More...
|
| |
| void | OnNodeInteractorChanged (itk::Object *caller, const itk::EventObject &event) |
| |
| void | OnNodeModifiedOrDeleted (const itk::Object *caller, const itk::EventObject &event) |
| | OnNodeModified listens to modified events of DataNodes. More...
|
| |
| void | AddListeners (const DataNode *_Node) |
| | Adds a Modified-Listener to the given Node. More...
|
| |
| void | RemoveListeners (const DataNode *_Node) |
| | Removes a Modified-Listener from the given Node. More...
|
| |
| | DataStorage () |
| |
| | ~DataStorage () override |
| |
| SetOfObjects::ConstPointer | FilterSetOfObjects (const SetOfObjects *set, const NodePredicateBase *condition) const |
| | Filters a SetOfObjects by the condition. If no condition is provided, the original set is returned. More...
|
| |
| void | PrintSelf (std::ostream &os, itk::Indent indent) const override |
| | Prints the contents of the DataStorage to os. Do not call directly, call ->Print() instead. More...
|
| |
Concrete DataStorage implementation that stores nodes in an in-memory adjacency list graph.
StandaloneDataStorage is the standard implementation of mitk::DataStorage. It manages 'was created by' relationships by maintaining two adjacency lists: one for source (parent) nodes and one for derived (child) nodes. The graph structure is non-cyclical and directed.
This class is fully thread-safe; all public methods that access the internal data structures are protected by a mutex.
- See also
- DataStorage, DataNode
Definition at line 41 of file mitkStandaloneDataStorage.h.