36 #ifndef vtkNIFTIHeader_h
37 #define vtkNIFTIHeader_h
39 #include "vtkObject.h"
40 #include "vtkDICOMModule.h"
41 #include "vtkDICOMConfig.h"
77 IntentEstimate = 1001,
79 IntentNeuroName = 1003,
80 IntentGenMatrix = 1004,
81 IntentSymMatrix = 1005,
82 IntentDispVect = 1006,
84 IntentPointSet = 1008,
85 IntentTriangle = 1009,
86 IntentQuaternion = 1010,
88 IntentTimeSeries = 2001,
89 IntentNodeIndex = 2002,
90 IntentRGBVector = 2003,
91 IntentRGBAVector = 2004,
102 XFormTemplateOther = 5
152 TypeComplex128 = 1792,
153 TypeComplex256 = 2048,
159 Nifti1HeaderSize = 348,
160 Nifti2HeaderSize = 540
168 void PrintSelf(ostream& os, vtkIndent indent) VTK_DICOM_OVERRIDE;
171 const char *GetMagic() {
return this->Magic; }
190 return (i < 0 || i > 7 ? 0 : this->Dim[i]); }
198 return (i < 0 || i > 7 ? 0.0 : this->PixDim[i]); }
207 vtkSetMacro(IntentCode,
int);
208 int GetIntentCode() {
return this->IntentCode; }
212 void SetIntentName(
const char *name);
214 const char *GetIntentName() {
return this->IntentName; }
222 vtkSetMacro(IntentP1,
double);
223 double GetIntentP1() {
return this->IntentP1; }
224 vtkSetMacro(IntentP2,
double);
225 double GetIntentP2() {
return this->IntentP2; }
226 vtkSetMacro(IntentP3,
double);
227 double GetIntentP3() {
return this->IntentP3; }
231 vtkSetMacro(SclSlope,
double);
233 double GetSclSlope() {
return this->SclSlope; }
234 vtkSetMacro(SclInter,
double);
235 double GetSclInter() {
return this->SclInter; }
239 vtkSetMacro(CalMin,
double);
241 double GetCalMin() {
return this->CalMin; }
242 vtkSetMacro(CalMax,
double);
243 double GetCalMax() {
return this->CalMax; }
247 vtkSetMacro(SliceDuration,
double);
249 double GetSliceDuration() {
return this->SliceDuration; }
250 vtkSetMacro(TOffset,
double);
251 double GetTOffset() {
return this->TOffset; }
255 vtkSetMacro(SliceStart, vtkTypeInt64);
257 vtkTypeInt64 GetSliceStart() {
return this->SliceStart; }
258 vtkSetMacro(SliceEnd, vtkTypeInt64);
259 vtkTypeInt64 GetSliceEnd() {
return this->SliceEnd; }
263 vtkSetMacro(SliceCode,
int);
265 int GetSliceCode() {
return this->SliceCode; }
269 vtkSetMacro(XYZTUnits,
int);
271 int GetXYZTUnits() {
return this->XYZTUnits; }
280 vtkSetMacro(DimInfo,
int);
281 int GetDimInfo() {
return this->DimInfo; }
291 const char *GetDescrip() {
return this->Descrip; }
302 const char *GetAuxFile() {
return this->AuxFile; }
306 vtkSetMacro(QFormCode,
int);
308 int GetQFormCode() {
return this->QFormCode; }
309 vtkSetMacro(SFormCode,
int);
310 int GetSFormCode() {
return this->SFormCode; }
319 vtkSetMacro(QuaternB,
double);
320 double GetQuaternB() {
return this->QuaternB; }
321 vtkSetMacro(QuaternC,
double);
322 double GetQuaternC() {
return this->QuaternC; }
323 vtkSetMacro(QuaternD,
double);
324 double GetQuaternD() {
return this->QuaternD; }
325 vtkSetMacro(QOffsetX,
double);
326 double GetQOffsetX() {
return this->QOffsetX; }
327 vtkSetMacro(QOffsetY,
double);
328 double GetQOffsetY() {
return this->QOffsetY; }
329 vtkSetMacro(QOffsetZ,
double);
330 double GetQOffsetZ() {
return this->QOffsetZ; }
339 vtkSetVector4Macro(SRowX,
double);
340 vtkGetVector4Macro(SRowX,
double);
341 vtkSetVector4Macro(SRowY,
double);
342 vtkGetVector4Macro(SRowY,
double);
343 vtkSetVector4Macro(SRowZ,
double);
344 vtkGetVector4Macro(SRowZ,
double);
376 vtkTypeInt64 VoxOffset;
390 double SliceDuration;
392 vtkTypeInt64 SliceStart;
393 vtkTypeInt64 SliceEnd;
411 void SetStringValue(
char *x, const
char *y,
size_t n);
414 #ifdef VTK_DICOM_DELETE
abstract base class for most VTK objects
Definition: vtkObject.h:54