Slicer 5.13
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
vtkMRMLMultiVolumeDisplayNode.h
Go to the documentation of this file.
1/*=auto=========================================================================
2
3 Portions (c) Copyright 2005 Brigham and Women's Hospital (BWH) All Rights Reserved.
4
5 See COPYRIGHT.txt
6 or http://www.slicer.org/copyright/copyright.txt for details.
7
8 Program: 3D Slicer
9 Module: $RCSfile: vtkMRMLMultiVolumeDisplayNode.h,v $
10 Date: $Date: 2006/03/19 17:12:29 $
11 Version: $Revision: 1.3 $
12
13=========================================================================auto=*/
23
24#ifndef __vtkMRMLMultiVolumeDisplayNode_h
25#define __vtkMRMLMultiVolumeDisplayNode_h
26
27// MultiVolumeExplorer includes
28#include <vtkSlicerMultiVolumeExplorerModuleMRMLExport.h>
29
30// MRML includes
32
33// VTK includes
34class vtkAlgorithmOutput;
35class vtkImageData;
36class vtkImageExtractComponents;
37
38class VTK_SLICER_MULTIVOLUMEEXPLORER_MODULE_MRML_EXPORT vtkMRMLMultiVolumeDisplayNode : public vtkMRMLScalarVolumeDisplayNode
39{
40public:
43 void PrintSelf(ostream& os, vtkIndent indent) override;
44
45 virtual vtkMRMLNode* CreateNodeInstance() override;
46
49 virtual void ReadXMLAttributes(const char** atts) override;
50
53 virtual void WriteXML(ostream& of, int indent) override;
54
57 virtual void Copy(vtkMRMLNode* node) override;
58
61 virtual const char* GetNodeTagName() override { return "MultiVolumeDisplay"; };
62
65#if (VTK_MAJOR_VERSION <= 5)
66 virtual vtkImageData* GetInputImageData();
67#else
68 virtual vtkAlgorithmOutput* GetInputImageDataConnection() override;
69#endif
72#if (VTK_MAJOR_VERSION <= 5)
73 // BTX
74 virtual vtkImageData* GetOutputImageData();
75 // ETX
76#else
77 virtual vtkAlgorithmOutput* GetOutputImageDataConnection() override;
78#endif
79 virtual void UpdateImageDataPipeline() override;
80
81 //--------------------------------------------------------------------------
83 //--------------------------------------------------------------------------
84
87 vtkGetMacro(FrameComponent, int);
88 vtkSetMacro(FrameComponent, int);
89
90protected:
95
98#if (VTK_MAJOR_VERSION <= 5)
99 virtual void SetInputToImageDataPipeline(vtkImageData* imageData);
100#else
101 virtual void SetInputToImageDataPipeline(vtkAlgorithmOutput* imageDataConnection) override;
102#endif
103
104 virtual vtkImageData* GetScalarImageData();
105
107
108 vtkImageExtractComponents* ExtractComponent;
109};
110
111#endif
vtkMRMLMultiVolumeDisplayNode(const vtkMRMLMultiVolumeDisplayNode &)
virtual vtkImageData * GetScalarImageData()
virtual vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
vtkImageExtractComponents * ExtractComponent
virtual void WriteXML(ostream &of, int indent) override
Write this node's information to a MRML file in XML format.
void operator=(const vtkMRMLMultiVolumeDisplayNode &)
virtual void SetInputToImageDataPipeline(vtkImageData *imageData)
Set the input of the pipeline.
virtual void UpdateImageDataPipeline() override
Update the pipeline based on this node attributes.
void PrintSelf(ostream &os, vtkIndent indent) override
static vtkMRMLMultiVolumeDisplayNode * New()
virtual vtkImageData * GetInputImageData()
Get the pipeline input.
virtual void Copy(vtkMRMLNode *node) override
Copy the node's attributes to this object.
virtual const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
virtual vtkImageData * GetOutputImageData()
Get the pipeline output.
virtual void ReadXMLAttributes(const char **atts) override
Set node attributes.
Abstract Superclass for all specific types of MRML nodes.
void SetInputToImageDataPipeline(vtkAlgorithmOutput *imageDataConnection) override
vtkAlgorithmOutput * GetOutputImageDataConnection() override
Gets the pipeline output.
vtkAlgorithmOutput * GetInputImageDataConnection() override
Gets the pipeline input.