Slicer  4.13
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLViewDisplayableManager.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 Jean-Christophe Fillion-Robin, Kitware Inc.
17  and was partially funded by NIH grant 3P41RR013218-12S1
18 
19 ==============================================================================*/
20 
21 #ifndef __vtkMRMLViewDisplayableManager_h
22 #define __vtkMRMLViewDisplayableManager_h
23 
24 // MRMLDisplayableManager includes
26 #include "vtkMRMLDisplayableManagerExport.h"
27 
28 // MRML includes
29 class vtkMRMLCameraNode;
30 
38 class VTK_MRML_DISPLAYABLEMANAGER_EXPORT vtkMRMLViewDisplayableManager
40 {
41 
42 public:
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
47 protected:
48 
51 
53  void ProcessMRMLNodesEvents(vtkObject *caller, unsigned long event, void *callData) override;
54  void ProcessWidgetsEvents(vtkObject *caller, unsigned long event, void *callData) override;
55 
56  void AdditionalInitializeStep() override;
57 
59  void Create() override;
60 
64  void OnMRMLDisplayableNodeModifiedEvent(vtkObject* caller) override;
65 
68  void UpdateFromViewNode();
69 
72  void SetAndObserveCameraNode(vtkMRMLCameraNode* cameraNodeToObserve);
73 
76  void UpdateFromCameraNode();
77 
78 private:
79 
81  void operator=(const vtkMRMLViewDisplayableManager&) = delete;
82 
83  class vtkInternal;
84  vtkInternal * Internal;
85 };
86 
87 #endif
Displayable manager that configures a vtkRenderer from a vtkMRMLViewNode and its associated active vt...
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkMRMLAbstractThreeDViewDisplayableManager * New()
virtual void ProcessWidgetsEvents(vtkObject *caller, unsigned long event, void *callData)
void ProcessMRMLNodesEvents(vtkObject *caller, unsigned long event, void *callData) override
void OnMRMLDisplayableNodeModifiedEvent(vtkObject *caller) override
MRML node to represent camera node.