Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLModelSliceDisplayableManager.h
Go to the documentation of this file.
1 /*==============================================================================
2 
3  Program: 3D Slicer
4 
5  Copyright (c) Kitware Inc.
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 Julien Finet, Kitware Inc.
17  and was partially funded by NIH grant 3P41RR013218-12S1
18 
19 ==============================================================================*/
20 
21 #ifndef __vtkMRMLModelSliceDisplayableManager_h
22 #define __vtkMRMLModelSliceDisplayableManager_h
23 
24 // MRMLDisplayableManager includes
26 #include "vtkMRMLDisplayableManagerExport.h"
27 
29 
35 class VTK_MRML_DISPLAYABLEMANAGER_EXPORT vtkMRMLModelSliceDisplayableManager
37 {
38 
39 public:
43  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
45  // DisplayableNode handling customizations
46  void AddDisplayableNode(vtkMRMLDisplayableNode* displayableNode);
47  void RemoveDisplayableNode(vtkMRMLDisplayableNode* displayableNode);
48 
49 protected:
50 
53 
54  void UnobserveMRMLScene() override;
55  void OnMRMLSceneNodeAdded(vtkMRMLNode* node) override;
56  void OnMRMLSceneNodeRemoved(vtkMRMLNode* node) override;
57  void ProcessMRMLNodesEvents(vtkObject* caller, unsigned long event, void* callData) override;
58 
59  void UpdateFromMRML() override;
60  void OnMRMLSceneStartClose() override;
61  void OnMRMLSceneEndClose() override;
62  void OnMRMLSceneEndBatchProcess() override;
63 
66  void Create() override;
68 
69 private:
70 
72  void operator=(const vtkMRMLModelSliceDisplayableManager&) = delete;
73 
74  class vtkInternal;
75  vtkInternal * Internal;
76  friend class vtkInternal;
77 
78 };
79 
80 #endif
virtual void OnMRMLSceneStartClose()
Displayable manager for slice (2D) views.
virtual void OnMRMLSceneEndClose()
void PrintSelf(ostream &os, vtkIndent indent) override
virtual void OnMRMLSceneNodeAdded(vtkMRMLNode *)
virtual void UnobserveMRMLScene()
virtual void OnMRMLSceneEndBatchProcess()
virtual void OnMRMLSceneNodeRemoved(vtkMRMLNode *)
void ProcessMRMLNodesEvents(vtkObject *caller, unsigned long event, void *callData) override
static vtkMRMLAbstractSliceViewDisplayableManager * New()
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:167