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
qSlicerSubjectHierarchyVolumeRenderingPlugin.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 the Applied Cancer Research Unit program of Cancer Care
19 Ontario with funds provided by the Ontario Ministry of Health and Long-Term Care
20
21==============================================================================*/
22
23#ifndef __qSlicerSubjectHierarchyVolumeRenderingPlugin_h
24#define __qSlicerSubjectHierarchyVolumeRenderingPlugin_h
25
26// SubjectHierarchy Plugins includes
28
29#include "qSlicerVolumeRenderingSubjectHierarchyPluginsExport.h"
30
31class qSlicerSubjectHierarchyVolumeRenderingPluginPrivate;
32class vtkMRMLViewNode;
35
36class Q_SLICER_VOLUMERENDERING_SUBJECT_HIERARCHY_PLUGINS_EXPORT qSlicerSubjectHierarchyVolumeRenderingPlugin : public qSlicerSubjectHierarchyAbstractPlugin
37{
38public:
39 Q_OBJECT
40
41public:
45
46public:
48 Q_INVOKABLE void setVolumeRenderingLogic(vtkSlicerVolumeRenderingLogic* volumeRenderingLogic);
49
53
56 void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override;
57
62 bool showItemInView(vtkIdType itemID, vtkMRMLAbstractViewNode* viewNode, vtkIdList* allItemsToShow) override;
63
66 Q_INVOKABLE bool showVolumeRendering(bool show, vtkIdType itemID, vtkMRMLViewNode* viewNode=nullptr);
67
68protected slots:
73
74protected:
75 QScopedPointer<qSlicerSubjectHierarchyVolumeRenderingPluginPrivate> d_ptr;
76
77 void resetFieldOfView(vtkMRMLDisplayNode* displayNode, vtkMRMLViewNode* viewNode=nullptr);
78
79private:
82};
83
84#endif
qSlicerSubjectHierarchyAbstractPlugin(QObject *parent=nullptr)
void showVisibilityContextMenuActionsForItem(vtkIdType itemID) override
Q_INVOKABLE bool showVolumeRendering(bool show, vtkIdType itemID, vtkMRMLViewNode *viewNode=nullptr)
bool showItemInView(vtkIdType itemID, vtkMRMLAbstractViewNode *viewNode, vtkIdList *allItemsToShow) override
qSlicerSubjectHierarchyVolumeRenderingPlugin(QObject *parent=nullptr)
QScopedPointer< qSlicerSubjectHierarchyVolumeRenderingPluginPrivate > d_ptr
QList< QAction * > visibilityContextMenuActions() const override
void resetFieldOfView(vtkMRMLDisplayNode *displayNode, vtkMRMLViewNode *viewNode=nullptr)
Q_INVOKABLE void setVolumeRenderingLogic(vtkSlicerVolumeRenderingLogic *volumeRenderingLogic)
Set volume rendering module logic. Required for accessing display nodes and setting up volume renderi...
void toggleVolumeRenderingForCurrentItem(bool)
Toggle volume rendering option for current volume item.
void showVolumeRenderingOptionsForCurrentItem()
Switch to Volume Rendering module and select current volume item.
Abstract MRML node to represent a view. The class holds the properties common to any view type (3D,...
Abstract class that contains graphical display properties for displayable nodes.
MRML node to represent a 3D view.