2 #ifndef __vtkTeemNRRDWriter_h 3 #define __vtkTeemNRRDWriter_h 7 #include "vtkDoubleArray.h" 8 #include "vtkMatrix4x4.h" 9 #include "vtkSmartPointer.h" 10 #include "teem/nrrd.h" 12 #include "vtkTeemConfigure.h" 15 class AttributeMapType;
16 class AxisInfoMapType;
28 void PrintSelf(ostream& os, vtkIndent indent)
override;
34 vtkImageData* GetInput();
35 vtkImageData* GetInput(
int port);
39 vtkSetStringMacro(FileName);
40 vtkGetStringMacro(FileName);
42 vtkSetObjectMacro(DiffusionGradients,vtkDoubleArray);
43 vtkGetObjectMacro(DiffusionGradients,vtkDoubleArray);
45 vtkSetObjectMacro(BValues,vtkDoubleArray);
46 vtkGetObjectMacro(BValues,vtkDoubleArray);
48 vtkSetObjectMacro(IJKToRASMatrix,vtkMatrix4x4);
49 vtkGetObjectMacro(IJKToRASMatrix,vtkMatrix4x4);
51 vtkSetObjectMacro(MeasurementFrameMatrix,vtkMatrix4x4);
52 vtkGetObjectMacro(MeasurementFrameMatrix,vtkMatrix4x4);
54 vtkSetMacro(UseCompression,
int);
55 vtkGetMacro(UseCompression,
int);
56 vtkBooleanMacro(UseCompression,
int);
58 vtkSetClampMacro(CompressionLevel,
int, 0, 9);
59 vtkGetMacro(CompressionLevel,
int);
61 vtkSetClampMacro(FileType,
int,VTK_ASCII,VTK_BINARY);
62 vtkGetMacro(FileType,
int);
67 vtkBooleanMacro(WriteError,
int);
68 vtkSetMacro(WriteError,
int);
69 vtkGetMacro(WriteError,
int);
73 void SetAttribute(
const std::string& name,
const std::string& value);
76 void SetAxisLabel(
unsigned int axis,
const char* label);
79 void SetAxisUnit(
unsigned int axis,
const char* unit);
84 void SetVectorAxisKind(
int kind);
88 vtkSetMacro(Space,
int);
89 vtkGetMacro(Space,
int);
101 vtkSetMacro(ForceRangeAxis,
bool);
102 vtkGetMacro(ForceRangeAxis,
bool);
103 vtkBooleanMacro(ForceRangeAxis,
bool);
112 int FillInputPortInformation(
int port, vtkInformation *info)
override;
116 void WriteData()
override;
145 void vtkImageDataInfoToNrrdInfo(vtkImageData *in,
int &nrrdKind,
size_t &numComp,
int &vtkType,
void **buffer);
146 int VTKToNrrdPixelType(
const int vtkPixelType );
147 int DiffusionWeightedData;
int WriteError
Flag to set to on when a write error occurred
vtkMatrix4x4 * MeasurementFrameMatrix
void SetFileTypeToASCII()
AxisInfoMapType * AxisLabels
void vtkSetSpaceToRAS()
Set coordinate system to RAS.
void SetFileTypeToBinary()
AxisInfoMapType * AxisUnits
vtkDoubleArray * DiffusionGradients
vtkMatrix4x4 * IJKToRASMatrix
void vtkSetSpaceToLPS()
Set coordinate system to LPS.
AttributeMapType * Attributes