Main Page | Modules | Class List | File List | Class Members | File Members

nifti1.h File Reference

Official definition of the nifti1 header. Written by Bob Cox, SSCC, NIMH. More...

Go to the source code of this file.

Classes

struct  nifti_1_header
 Data structure defining the fields in the nifti1 header. This binary header should be found at the beginning of a valid NIFTI-1 header file. More...
struct  nifti1_extender
 This structure represents a 4-byte string that should follow the binary nifti_1_header data in a NIFTI-1 header file. If the char values are {1,0,0,0}, the file is expected to contain extensions, values of {0,0,0,0} imply the file does not contain extensions. Other sequences of values are not currently defined. More...
struct  nifti1_extension
 Data structure defining the fields of a header extension. More...

Defines

#define DT_NONE   0
#define DT_UNKNOWN   0
#define DT_BINARY   1
#define DT_UNSIGNED_CHAR   2
#define DT_SIGNED_SHORT   4
#define DT_SIGNED_INT   8
#define DT_FLOAT   16
#define DT_COMPLEX   32
#define DT_DOUBLE   64
#define DT_RGB   128
#define DT_ALL   255
#define DT_UINT8   2
#define DT_INT16   4
#define DT_INT32   8
#define DT_FLOAT32   16
#define DT_COMPLEX64   32
#define DT_FLOAT64   64
#define DT_RGB24   128
#define DT_INT8   256
#define DT_UINT16   512
#define DT_UINT32   768
#define DT_INT64   1024
#define DT_UINT64   1280
#define DT_FLOAT128   1536
#define DT_COMPLEX128   1792
#define DT_COMPLEX256   2048
#define DT_RGBA32   2304
#define NIFTI_TYPE_UINT8   2
#define NIFTI_TYPE_INT16   4
#define NIFTI_TYPE_INT32   8
#define NIFTI_TYPE_FLOAT32   16
#define NIFTI_TYPE_COMPLEX64   32
#define NIFTI_TYPE_FLOAT64   64
#define NIFTI_TYPE_RGB24   128
#define NIFTI_TYPE_INT8   256
#define NIFTI_TYPE_UINT16   512
#define NIFTI_TYPE_UINT32   768
#define NIFTI_TYPE_INT64   1024
#define NIFTI_TYPE_UINT64   1280
#define NIFTI_TYPE_FLOAT128   1536
#define NIFTI_TYPE_COMPLEX128   1792
#define NIFTI_TYPE_COMPLEX256   2048
#define NIFTI_TYPE_RGBA32   2304
#define NIFTI_INTENT_NONE   0
#define NIFTI_INTENT_CORREL   2
#define NIFTI_INTENT_TTEST   3
#define NIFTI_INTENT_FTEST   4
#define NIFTI_INTENT_ZSCORE   5
#define NIFTI_INTENT_CHISQ   6
#define NIFTI_INTENT_BETA   7
#define NIFTI_INTENT_BINOM   8
#define NIFTI_INTENT_GAMMA   9
#define NIFTI_INTENT_POISSON   10
#define NIFTI_INTENT_NORMAL   11
#define NIFTI_INTENT_FTEST_NONC   12
#define NIFTI_INTENT_CHISQ_NONC   13
#define NIFTI_INTENT_LOGISTIC   14
#define NIFTI_INTENT_LAPLACE   15
#define NIFTI_INTENT_UNIFORM   16
#define NIFTI_INTENT_TTEST_NONC   17
#define NIFTI_INTENT_WEIBULL   18
#define NIFTI_INTENT_CHI   19
#define NIFTI_INTENT_INVGAUSS   20
#define NIFTI_INTENT_EXTVAL   21
#define NIFTI_INTENT_PVAL   22
#define NIFTI_INTENT_LOGPVAL   23
#define NIFTI_INTENT_LOG10PVAL   24
#define NIFTI_FIRST_STATCODE   2
#define NIFTI_LAST_STATCODE   24
#define NIFTI_INTENT_ESTIMATE   1001
#define NIFTI_INTENT_LABEL   1002
#define NIFTI_INTENT_NEURONAME   1003
#define NIFTI_INTENT_GENMATRIX   1004
#define NIFTI_INTENT_SYMMATRIX   1005
#define NIFTI_INTENT_DISPVECT   1006
#define NIFTI_INTENT_VECTOR   1007
#define NIFTI_INTENT_POINTSET   1008
#define NIFTI_INTENT_TRIANGLE   1009
#define NIFTI_INTENT_QUATERNION   1010
#define NIFTI_INTENT_DIMLESS   1011
#define NIFTI_INTENT_TIME_SERIES   2001
#define NIFTI_INTENT_NODE_INDEX   2002
#define NIFTI_INTENT_RGB_VECTOR   2003
#define NIFTI_INTENT_RGBA_VECTOR   2004
#define NIFTI_INTENT_SHAPE   2005
#define NIFTI_XFORM_UNKNOWN   0
#define NIFTI_XFORM_SCANNER_ANAT   1
#define NIFTI_XFORM_ALIGNED_ANAT   2
#define NIFTI_XFORM_TALAIRACH   3
#define NIFTI_XFORM_MNI_152   4
#define NIFTI_UNITS_UNKNOWN   0
#define NIFTI_UNITS_METER   1
#define NIFTI_UNITS_MM   2
#define NIFTI_UNITS_MICRON   3
#define NIFTI_UNITS_SEC   8
#define NIFTI_UNITS_MSEC   16
#define NIFTI_UNITS_USEC   24
#define NIFTI_UNITS_HZ   32
#define NIFTI_UNITS_PPM   40
#define NIFTI_UNITS_RADS   48
#define XYZT_TO_SPACE(xyzt)   ( (xyzt) & 0x07 )
#define XYZT_TO_TIME(xyzt)   ( (xyzt) & 0x38 )
#define SPACE_TIME_TO_XYZT(ss, tt)
#define DIM_INFO_TO_FREQ_DIM(di)   ( ((di) ) & 0x03 )
#define DIM_INFO_TO_PHASE_DIM(di)   ( ((di) >> 2) & 0x03 )
#define DIM_INFO_TO_SLICE_DIM(di)   ( ((di) >> 4) & 0x03 )
#define FPS_INTO_DIM_INFO(fd, pd, sd)
#define NIFTI_SLICE_UNKNOWN   0
#define NIFTI_SLICE_SEQ_INC   1
#define NIFTI_SLICE_SEQ_DEC   2
#define NIFTI_SLICE_ALT_INC   3
#define NIFTI_SLICE_ALT_DEC   4
#define NIFTI_SLICE_ALT_INC2   5
#define NIFTI_SLICE_ALT_DEC2   6
#define NIFTI_VERSION(h)
#define NIFTI_ONEFILE(h)   ( (h).magic[1] == '+' )
#define NIFTI_NEEDS_SWAP(h)   ( (h).dim[0] < 0 || (h).dim[0] > 7 )
#define NIFTI_5TH_DIM(h)   ( ((h).dim[0]>4 && (h).dim[5]>1) ? (h).dim[5] : 0 )

Typedefs

typedef nifti_1_header nifti_1_header
typedef nifti1_extender nifti1_extender
typedef nifti1_extension nifti1_extension


Detailed Description

Official definition of the nifti1 header. Written by Bob Cox, SSCC, NIMH.

HISTORY:

29 Nov 2007 [rickr]


Define Documentation

#define FPS_INTO_DIM_INFO fd,
pd,
sd   ) 
 

Value:

( ( ( ((char)(fd)) & 0x03)      ) |  \
                                      ( ( ((char)(pd)) & 0x03) << 2 ) |  \
                                      ( ( ((char)(sd)) & 0x03) << 4 )  )

#define NIFTI_5TH_DIM  )     ( ((h).dim[0]>4 && (h).dim[5]>1) ? (h).dim[5] : 0 )
 

Check if a nifti_1_header struct contains a 5th (vector) dimension. Returns size of 5th dimension if > 1, returns 0 otherwise.

#define NIFTI_INTENT_NONE   0
 

default: no intention is indicated in the header.

#define NIFTI_NEEDS_SWAP  )     ( (h).dim[0] < 0 || (h).dim[0] > 7 )
 

Check if a nifti_1_header struct needs to be byte swapped. Returns 1 if it needs to be swapped, 0 if it does not.

#define NIFTI_ONEFILE  )     ( (h).magic[1] == '+' )
 

Check if a nifti_1_header struct says if the data is stored in the same file or in a separate file. Returns 1 if the data is in the same file as the header, 0 if it is not.

#define NIFTI_VERSION  ) 
 

Value:

( ( (h).magic[0]=='n' && (h).magic[3]=='\0'    &&     \
     ( (h).magic[1]=='i' || (h).magic[1]=='+' ) &&     \
     ( (h).magic[2]>='1' && (h).magic[2]<='9' )   )    \
 ? (h).magic[2]-'0' : 0 )
Given a nifti_1_header struct, check if it has a good magic number. Returns NIFTI version number (1..9) if magic is good, 0 if it is not.

#define SPACE_TIME_TO_XYZT ss,
tt   ) 
 

Value:

(  (((char)(ss)) & 0x07)   \
                                   | (((char)(tt)) & 0x38) )


Generated on Thu Dec 6 17:09:50 2007 for nifti1_io by  doxygen 1.3.9.1