Slicer 5.6
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLSegmentationsDisplayableManager2D.h
Go to the documentation of this file.
1/*==============================================================================
2
3 Copyright (c) Laboratory for Percutaneous Surgery (PerkLab)
4 Queen's University, Kingston, ON, Canada. All Rights Reserved.
5
6 See COPYRIGHT.txt
7 or http://www.slicer.org/copyright/copyright.txt for details.
8
9 Unless required by applicable law or agreed to in writing, software
10 distributed under the License is distributed on an "AS IS" BASIS,
11 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 See the License for the specific language governing permissions and
13 limitations under the License.
14
15 This file was originally developed by Csaba Pinter, PerkLab, Queen's University
16 and was supported through the Applied Cancer Research Unit program of Cancer Care
17 Ontario with funds provided by the Ontario Ministry of Health and Long-Term Care
18
19==============================================================================*/
20
21#ifndef __vtkMRMLSegmentationsDisplayableManager2D_h
22#define __vtkMRMLSegmentationsDisplayableManager2D_h
23
24// MRMLDisplayableManager includes
26
27#include "vtkSlicerSegmentationsModuleMRMLDisplayableManagerExport.h"
28
30class vtkStringArray;
31class vtkDoubleArray;
32
37class VTK_SLICER_SEGMENTATIONS_MODULE_MRMLDISPLAYABLEMANAGER_EXPORT vtkMRMLSegmentationsDisplayableManager2D
39{
40
41public:
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
48 std::string GetDataProbeInfoStringForPosition(double xyz[3]) override;
49
52 virtual void GetVisibleSegmentsForPosition(double ras[3], vtkMRMLSegmentationDisplayNode* displayNode,
53 vtkStringArray* segmentIDs, vtkDoubleArray* segmentValues = nullptr);
54
55protected:
56 void UnobserveMRMLScene() override;
57 void OnMRMLSceneNodeAdded(vtkMRMLNode* node) override;
58 void OnMRMLSceneNodeRemoved(vtkMRMLNode* node) override;
59 void ProcessMRMLNodesEvents(vtkObject* caller, unsigned long event, void* callData) override;
60
62 void UpdateFromMRML() override;
63
64 void OnMRMLSceneStartClose() override;
65 void OnMRMLSceneEndClose() override;
66
68
70 void Create() override;
71
72protected:
75
76private:
78 void operator=(const vtkMRMLSegmentationsDisplayableManager2D&) = delete;
79
80 class vtkInternal;
81 vtkInternal * Internal;
82 friend class vtkInternal;
83};
84
85#endif
Abstract Superclass for all specific types of MRML nodes.
MRML node for representing segmentation display attributes.
Displayable manager for showing segmentations in slice (2D) views.
void UpdateFromMRML() override
Update Actors based on transforms in the scene.
void OnMRMLSceneNodeAdded(vtkMRMLNode *node) override
std::string GetDataProbeInfoStringForPosition(double xyz[3]) override
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkMRMLSegmentationsDisplayableManager2D * New()
void OnMRMLSceneNodeRemoved(vtkMRMLNode *node) override
void ProcessMRMLNodesEvents(vtkObject *caller, unsigned long event, void *callData) override
void Create() override
Initialize the displayable manager based on its associated vtkMRMLSliceNode.
virtual void GetVisibleSegmentsForPosition(double ras[3], vtkMRMLSegmentationDisplayNode *displayNode, vtkStringArray *segmentIDs, vtkDoubleArray *segmentValues=nullptr)