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
vtkMRMLAnnotationSnapshotNode.h
Go to the documentation of this file.
1// .NAME vtkMRMLAnnotationSnapshotNode - MRML node to represent scene snapshot including description and screenshot
2// .SECTION Description
3// n/A
4//
5
6#ifndef __vtkMRMLAnnotationSnapshotNode_h
7#define __vtkMRMLAnnotationSnapshotNode_h
8
9#include "vtkSlicerAnnotationsModuleMRMLExport.h"
12
13// VTK includes
14class vtkImageData;
15class vtkStringArray;
17
18// STD includes
19#include <string>
20
21class VTK_SLICER_ANNOTATIONS_MODULE_MRML_EXPORT vtkMRMLAnnotationSnapshotNode : public vtkMRMLAnnotationNode
22{
23public:
26
27 //--------------------------------------------------------------------------
28 // MRMLNode methods
29 //--------------------------------------------------------------------------
30
32 // Description:
33 // Get node XML tag name (like Volume, Model)
34 const char* GetNodeTagName() override {return "AnnotationSnapshot";}
35
36 const char* GetIcon() override {return ":/Icons/ViewCamera.png";}
37
38 void SetSnapshotDescription(const std::string& newDescription);
39 vtkGetMacro(SnapshotDescription, std::string);
40
41 void WriteXML(ostream& of, int nIndent) override;
42 void ReadXMLAttributes(const char** atts) override;
43
45 virtual void SetScreenShot(vtkImageData* );
46 vtkGetObjectMacro(ScreenShot, vtkImageData);
47
49 vtkGetMacro(ScaleFactor, double);
50 vtkSetMacro(ScaleFactor, double);
51
58 // TODO use an enum for the types
59 void SetScreenShotType(int type);
60 vtkGetMacro(ScreenShotType, int);
61
64
65 enum
66 {
69 };
70
71protected:
76
79
81 vtkImageData* ScreenShot;
82
90
92
93};
94
95#endif
vtkMRMLAnnotationSnapshotNode(const vtkMRMLAnnotationSnapshotNode &)
virtual void SetScreenShot(vtkImageData *)
The attached screenshot.
std::string SnapshotDescription
The associated Description.
void SetSnapshotDescription(const std::string &newDescription)
void ReadXMLAttributes(const char **atts) override
~vtkMRMLAnnotationSnapshotNode() override
vtkImageData * ScreenShot
The vtkImageData of the screenshot.
const char * GetNodeTagName() override
Get node XML tag name (like Volume, Model)
vtkMRMLStorageNode * CreateDefaultStorageNode() override
Create default storage node or nullptr if does not have one.
void SetScreenShotType(int type)
void WriteXML(ostream &of, int nIndent) override
vtkMRMLNode * CreateNodeInstance() override
MRMLNode methods.
static vtkMRMLAnnotationSnapshotNode * New()
void operator=(const vtkMRMLAnnotationSnapshotNode &)
Abstract Superclass for all specific types of MRML nodes.
A superclass for other storage nodes.