Slicer  4.11
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
vtkMRMLModelHierarchyNode.h
Go to the documentation of this file.
1 /*=auto=========================================================================
2 
3  Portions (c) Copyright 2005 Brigham and Women's Hospital (BWH) All Rights Reserved.
4 
5  See COPYRIGHT.txt
6  or http://www.slicer.org/copyright/copyright.txt for details.
7 
8  Program: 3D Slicer
9  Module: $RCSfile: vtkMRMLModelHierarchyNode.h,v $
10  Date: $Date: 2006/03/19 17:12:28 $
11  Version: $Revision: 1.6 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLModelHierarchyNode_h
16 #define __vtkMRMLModelHierarchyNode_h
17 
20 class vtkMRMLModelNode;
21 
24 {
25 public:
28  void PrintSelf(ostream& os, vtkIndent indent) override;
29 
30  //--------------------------------------------------------------------------
32  //--------------------------------------------------------------------------
33 
34  vtkMRMLNode* CreateNodeInstance() override;
35 
38  void ReadXMLAttributes( const char** atts) override;
39 
42  void WriteXML(ostream& of, int indent) override;
43 
44 
47  void Copy(vtkMRMLNode *node) override;
48 
51  const char* GetNodeTagName() override {return "ModelHierarchy";}
52 
56  void UpdateReferences() override;
57 
60  void UpdateScene(vtkMRMLScene *scene) override;
61 
64  void UpdateReferenceID(const char *oldID, const char *newID) override;
65 
68  void SetModelNodeID(const char* id)
69  {
70  this->SetDisplayableNodeID(id);
71  }
72 
74  {
75  return this->GetDisplayableNodeID();
76  }
77 
79  void SetModelNodeIDReference(const char* ref) {
80  this->SetModelNodeID(ref);
81  };
82 
83 
86  vtkMRMLModelNode* GetModelNode();
87 
90  vtkMRMLModelDisplayNode* GetModelDisplayNode();
91 
92 
96 
99  void GetChildrenModelNodes(vtkCollection *models);
100 
103  void ProcessMRMLEvents ( vtkObject * /*caller*/,
104  unsigned long /*event*/,
105  void * /*callData*/ ) override;
106 
107 
108 protected:
110  ~vtkMRMLModelHierarchyNode() override;
113 
114 
116 
118 
119 };
120 
121 #endif
void SetModelNodeIDReference(const char *ref)
Need this for tcl wrapping to call ReferenceStringMacro methods.
vtkMRMLDisplayableHierarchyNode * GetCollapsedParentNode()
Get the top parent node in the hierarchy which is not expanded
void ProcessMRMLEvents(vtkObject *, unsigned long, void *) override
alternative method to propagate events generated in Display nodes
MRML node to represent a display property of 3D surface model.
MRML node to represent a 3D surface model.
static vtkMRMLDisplayableHierarchyNode * New()
void PrintSelf(ostream &os, vtkIndent indent) override
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void operator=(const vtkMRMLDisplayableHierarchyNode &)
virtual char * GetDisplayableNodeID()
String ID of the corresponding displayable MRML node
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file
vtkMRMLNode * CreateNodeInstance() override
MRMLNode methods.
void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object
A set of MRML Nodes that supports serialization and undo/redo.
Definition: vtkMRMLScene.h:61
virtual void SetDisplayableNodeID(const char *ref)
vtkMRMLModelDisplayNode * ModelDisplayNode
Data.
void SetModelNodeID(const char *id)
String ID of the model MRML node
MRML node to represent a hierarchyu of models.
void UpdateScene(vtkMRMLScene *scene) override
Finds the Displayable node and read the data
const char * GetNodeTagName() override
Get node XML tag name (like Volume, ModelHierarchy)
MRML node to represent a hierarchy of displayable nodes.
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:167
void UpdateReferenceID(const char *oldID, const char *newID) override
Update the stored reference to another node in the scene