Slicer  5.3
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLLinearTransformsDisplayableManager3D.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Program: 3D Slicer
4 
5  Portions (c) Copyright Brigham and Women's Hospital (BWH) All Rights Reserved.
6 
7  See COPYRIGHT.txt
8  or http://www.slicer.org/copyright/copyright.txt for details.
9 
10  Unless required by applicable law or agreed to in writing, software
11  distributed under the License is distributed on an "AS IS" BASIS,
12  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  See the License for the specific language governing permissions and
14  limitations under the License.
15 
16  This file was originally developed by Andras Lasso and Franklin King at
17  PerkLab, Queen's University and was supported through the Applied Cancer
18  Research Unit program of Cancer Care Ontario with funds provided by the
19  Ontario Ministry of Health and Long-Term Care.
20 
21 ==============================================================================*/
22 
23 #ifndef __vtkMRMLLinearTransformsDisplayableManager3D_h
24 #define __vtkMRMLLinearTransformsDisplayableManager3D_h
25 
26 // MRMLDisplayableManager includes
28 
29 #include "vtkSlicerTransformsModuleMRMLDisplayableManagerExport.h"
30 
31 class vtkAbstractWidget;
33 
34 
40 class VTK_SLICER_TRANSFORMS_MODULE_MRMLDISPLAYABLEMANAGER_EXPORT vtkMRMLLinearTransformsDisplayableManager3D
42 {
43 public:
44 
47  void PrintSelf(ostream& os, vtkIndent indent) override;
48 
52  vtkAbstractWidget* GetWidget(vtkMRMLTransformDisplayNode* displayNode);
53 
54 protected:
55 
58 
59  void UnobserveMRMLScene() override;
60  void OnMRMLSceneNodeAdded(vtkMRMLNode* node) override;
61  void OnMRMLSceneNodeRemoved(vtkMRMLNode* node) override;
62  void ProcessMRMLNodesEvents(vtkObject* caller, unsigned long event, void* callData) override;
63 
65  void UpdateFromMRML() override;
66 
67  void OnMRMLSceneStartClose() override;
68  void OnMRMLSceneEndClose() override;
69 
70  void OnMRMLSceneEndBatchProcess() override;
71 
73  void Create() override;
74 
75  void ProcessWidgetsEvents(vtkObject* caller, unsigned long event, void* callData) override;
76 
77 private:
78 
80  void operator=(const vtkMRMLLinearTransformsDisplayableManager3D&) = delete;
81 
82  class vtkInternal;
83  vtkInternal* Internal;
84  friend class vtkInternal;
85 };
86 
87 #endif
virtual void OnMRMLSceneStartClose()
virtual void OnMRMLSceneEndClose()
void PrintSelf(ostream &os, vtkIndent indent) override
virtual void OnMRMLSceneNodeAdded(vtkMRMLNode *)
virtual void UnobserveMRMLScene()
static vtkMRMLAbstractThreeDViewDisplayableManager * New()
virtual void OnMRMLSceneEndBatchProcess()
virtual void OnMRMLSceneNodeRemoved(vtkMRMLNode *)
virtual void ProcessWidgetsEvents(vtkObject *caller, unsigned long event, void *callData)
void ProcessMRMLNodesEvents(vtkObject *caller, unsigned long event, void *callData) override
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:167
MRML node to represent display properties for transforms visualization in the slice and 3D viewers...