Slicer  4.10
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkMRMLTensorVolumeNode.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: vtkMRMLVolumeNode.h,v $
10  Date: $Date: 2006/03/19 17:12:29 $
11  Version: $Revision: 1.13 $
12 
13 =========================================================================auto=*/
14 
15 #ifndef __vtkMRMLTensorVolumeNode_h
16 #define __vtkMRMLTensorVolumeNode_h
17 
19 class vtkMRMLStorageNode;
20 
21 class vtkDoubleArray;
22 class vtkImageData;
23 class vtkMatrix4x4;
24 
34 class VTK_MRML_EXPORT vtkMRMLTensorVolumeNode : public vtkMRMLScalarVolumeNode
35 {
36  public:
37  static vtkMRMLTensorVolumeNode *New();
39  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
40 
41  virtual vtkMRMLNode* CreateNodeInstance() VTK_OVERRIDE;
42 
45  virtual void ReadXMLAttributes( const char** atts) VTK_OVERRIDE;
46 
49  virtual void WriteXML(ostream& of, int indent) VTK_OVERRIDE;
50 
53  virtual void Copy(vtkMRMLNode *node) VTK_OVERRIDE;
54 
57  virtual const char* GetNodeTagName() VTK_OVERRIDE {return "TensorVolume";}
58 
62  virtual void UpdateReferences() VTK_OVERRIDE
64 
67  virtual void UpdateReferenceID(const char *oldID, const char *newID) VTK_OVERRIDE
68  { Superclass::UpdateReferenceID(oldID, newID); }
69 
71  vtkGetMacro(Order,int);
72  vtkSetMacro(Order,int);
73 
76  void SetMeasurementFrameMatrix(const double mf[3][3]);
79  void SetMeasurementFrameMatrix(const double xr, const double xa, const double xs,
80  const double yr, const double ya, const double ys,
81  const double zr, const double za, const double zs);
82 
83  void GetMeasurementFrameMatrix(double mf[3][3]);
84 
87  void SetMeasurementFrameMatrix(vtkMatrix4x4 *mat);
88  void GetMeasurementFrameMatrix(vtkMatrix4x4 *mat);
89 
92  virtual vtkMRMLStorageNode* CreateDefaultStorageNode() VTK_OVERRIDE;
93 
94 protected:
98  void operator=(const vtkMRMLTensorVolumeNode&);
99 
100  double MeasurementFrameMatrix[3][3];
101  int Order;
102 };
103 
104 #endif
MRML node for representing diffusion weighted MRI volume.
virtual void UpdateReferences()
The method should remove all pointers and observations to all nodes that are not in the scene anymore...
virtual vtkMRMLNode * CreateNodeInstance() VTK_OVERRIDE
MRMLNode methods.
virtual void UpdateReferenceID(const char *oldID, const char *newID)
Update the stored reference to another node in the scene.
virtual vtkMRMLStorageNode * CreateDefaultStorageNode() VTK_OVERRIDE
Create default storage node or NULL if does not have one
virtual void UpdateReferenceID(const char *oldID, const char *newID) VTK_OVERRIDE
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
static vtkMRMLScalarVolumeNode * New()
A superclass for other storage nodes.
virtual void UpdateReferences() VTK_OVERRIDE
MRML node for representing a volume (image stack).
Abstract Superclass for all specific types of MRML nodes.
Definition: vtkMRMLNode.h:138