Slicer 5.9
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
Loading...
Searching...
No Matches
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{
32public:
35
37
40 const char* GetNodeTagName() override { return "LinearTransformSequenceStorage"; };
41
43 bool CanReadInReferenceNode(vtkMRMLNode* refNode) override;
44
46 bool CanWriteFromReferenceNode(vtkMRMLNode* refNode) override;
47 int WriteDataInternal(vtkMRMLNode* refNode) override;
48
51 const char* GetDefaultWriteFileExtension() override;
52
57 static int ReadSequenceFileTransforms(const std::string& fileName,
58 vtkMRMLScene* scene,
59 std::deque<vtkSmartPointer<vtkMRMLSequenceNode>>& createdNodes,
60 std::map<int, std::string>& frameNumberToIndexValueMap,
61 std::map<std::string, std::string>& imageMetaData,
63
65 static bool WriteSequenceMetafileTransforms(const std::string& fileName,
66 std::deque<vtkMRMLSequenceNode*>& transformNodes,
67 std::deque<std::string>& transformNames,
68 vtkMRMLSequenceNode* masterNode,
69 vtkMRMLSequenceNode* imageNode);
70
71protected:
76
81 int ReadDataInternal(vtkMRMLNode* refNode) override;
82
85
88};
89
90#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.