Slicer 5.9
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
vtkMRMLFolderDisplayNode.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Program: 3D Slicer
4
5 Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
6 Queen's University, Kingston, ON, Canada. All Rights Reserved.
7
8 See COPYRIGHT.txt
9 or http://www.slicer.org/copyright/copyright.txt for details.
10
11 Unless required by applicable law or agreed to in writing, software
12 distributed under the License is distributed on an "AS IS" BASIS,
13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 See the License for the specific language governing permissions and
15 limitations under the License.
16
17 This file was originally developed by Csaba Pinter, PerkLab, Queen's University
18 and was supported through CANARIE.
19
20==============================================================================*/
21
22#ifndef __vtkMRMLFolderDisplayNode_h
23#define __vtkMRMLFolderDisplayNode_h
24
25// MRML includes
26#include "vtkMRMLDisplayNode.h"
27
29
54class VTK_MRML_EXPORT vtkMRMLFolderDisplayNode : public vtkMRMLDisplayNode
55{
56public:
59 void PrintSelf(ostream& os, vtkIndent indent) override;
60
62
64 const char* GetNodeTagName() override {return "FolderDisplay";}
65
67 void ReadXMLAttributes(const char** atts) override;
68
70 void WriteXML(ostream& of, int indent) override;
71
75
77 void SetScene(vtkMRMLScene* scene) override;
78
80 void ProcessMRMLEvents( vtkObject *caller, unsigned long event, void *callData) override;
81
83 void Modified() override;
84
89 vtkGetMacro(ApplyDisplayPropertiesOnBranch, bool);
91
95
101
106
109 // or not. Opacity defined by hierarchy is the product of the ancestors' opacities.
111
112protected:
117
118private:
122 bool ApplyDisplayPropertiesOnBranch{false};
123};
124
125#endif
vtkMRMLCopyContentMacro(vtkMRMLFolderDisplayNode)
static vtkMRMLFolderDisplayNode * New()
void SetApplyDisplayPropertiesOnBranch(bool on)
void ReadXMLAttributes(const char **atts) override
Read node attributes from XML file.
~vtkMRMLFolderDisplayNode() override
static double GetHierarchyOpacity(vtkMRMLDisplayableNode *node)
void Modified() override
Overridden to be able to call modified on branch if necessary.
static vtkMRMLDisplayNode * GetOverridingHierarchyDisplayNode(vtkMRMLDisplayableNode *node)
void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void operator=(const vtkMRMLFolderDisplayNode &)
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
vtkMRMLFolderDisplayNode(const vtkMRMLFolderDisplayNode &)
void PrintSelf(ostream &os, vtkIndent indent) override
static bool GetHierarchyVisibility(vtkMRMLDisplayableNode *node)
void SetScene(vtkMRMLScene *scene) override
Make sure display node and transform node are present and valid.
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
void ProcessMRMLEvents(vtkObject *caller, unsigned long event, void *callData) override
Process events from the MRML scene.
friend class vtkMRMLScene