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
vtkMRMLLinearTransformSequenceStorageNode.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=========================================================================auto=*/
12
13#ifndef __vtkMRMLLinearTransformSequenceStorageNode_h
14#define __vtkMRMLLinearTransformSequenceStorageNode_h
15
16#include "vtkMRML.h"
18
19#include <deque>
20
22
29
31{
32 public:
33
36
38
41 const char* GetNodeTagName() override {return "LinearTransformSequenceStorage";};
42
44 bool CanReadInReferenceNode(vtkMRMLNode *refNode) override;
45
47 bool CanWriteFromReferenceNode(vtkMRMLNode* refNode) override;
48 int WriteDataInternal(vtkMRMLNode *refNode) override;
49
52 const char* GetDefaultWriteFileExtension() override;
53
58 static int ReadSequenceFileTransforms(const std::string& fileName, vtkMRMLScene *scene,
59 std::deque< vtkSmartPointer<vtkMRMLSequenceNode> > &createdNodes, std::map< int, std::string >& frameNumberToIndexValueMap,
60 std::map< std::string, std::string > &imageMetaData, SequenceFileType fileType = METAIMAGE_SEQUENCE_FILE);
61
63 static bool WriteSequenceMetafileTransforms(const std::string& fileName, std::deque< vtkMRMLSequenceNode* > &transformNodes,
64 std::deque< std::string > &transformNames, vtkMRMLSequenceNode* masterNode, vtkMRMLSequenceNode* imageNode);
65
66protected:
71
76 int ReadDataInternal(vtkMRMLNode* refNode) override;
77
80
83};
84
85#endif
vtkMRMLNode * CreateNodeInstance() override
Create instance of the default node. Like New only virtual.
void operator=(const vtkMRMLLinearTransformSequenceStorageNode &)
int ReadDataInternal(vtkMRMLNode *refNode) override
const char * GetDefaultWriteFileExtension() override
Return a default file extension for writing.
void InitializeSupportedWriteFileTypes() override
Initialize all the supported write file types.
int WriteDataInternal(vtkMRMLNode *refNode) override
bool CanWriteFromReferenceNode(vtkMRMLNode *refNode) override
Return true if the node can be written by using the writer.
static int ReadSequenceFileTransforms(const std::string &fileName, vtkMRMLScene *scene, std::deque< vtkSmartPointer< vtkMRMLSequenceNode > > &createdNodes, std::map< int, std::string > &frameNumberToIndexValueMap, std::map< std::string, std::string > &imageMetaData, SequenceFileType fileType=METAIMAGE_SEQUENCE_FILE)
void InitializeSupportedReadFileTypes() override
Initialize all the supported write file types.
static bool WriteSequenceMetafileTransforms(const std::string &fileName, std::deque< vtkMRMLSequenceNode * > &transformNodes, std::deque< std::string > &transformNames, vtkMRMLSequenceNode *masterNode, vtkMRMLSequenceNode *imageNode)
Write the transform fields to the metaimage header.
const char * GetNodeTagName() override
Get node XML tag name (like Storage, Model)
static vtkMRMLLinearTransformSequenceStorageNode * New()
bool CanReadInReferenceNode(vtkMRMLNode *refNode) override
Return true if the node can be read in.
vtkMRMLLinearTransformSequenceStorageNode(const vtkMRMLLinearTransformSequenceStorageNode &)
friend class vtkMRMLScene
MRML node for representing a sequence of MRML nodes.