12 #ifndef _NIFTI_HEADER_
13 #define _NIFTI_HEADER_
487 #define DT_UNSIGNED_CHAR 2
488 #define DT_SIGNED_SHORT 4
489 #define DT_SIGNED_INT 8
491 #define DT_COMPLEX 32
500 #define DT_FLOAT32 16
501 #define DT_COMPLEX64 32
502 #define DT_FLOAT64 64
507 #define DT_UINT16 512
508 #define DT_UINT32 768
509 #define DT_INT64 1024
510 #define DT_UINT64 1280
511 #define DT_FLOAT128 1536
512 #define DT_COMPLEX128 1792
513 #define DT_COMPLEX256 2048
514 #define DT_RGBA32 2304
525 #define NIFTI_TYPE_UINT8 2
527 #define NIFTI_TYPE_INT16 4
529 #define NIFTI_TYPE_INT32 8
531 #define NIFTI_TYPE_FLOAT32 16
533 #define NIFTI_TYPE_COMPLEX64 32
535 #define NIFTI_TYPE_FLOAT64 64
537 #define NIFTI_TYPE_RGB24 128
539 #define NIFTI_TYPE_INT8 256
541 #define NIFTI_TYPE_UINT16 512
543 #define NIFTI_TYPE_UINT32 768
545 #define NIFTI_TYPE_INT64 1024
547 #define NIFTI_TYPE_UINT64 1280
549 #define NIFTI_TYPE_FLOAT128 1536
551 #define NIFTI_TYPE_COMPLEX128 1792
553 #define NIFTI_TYPE_COMPLEX256 2048
555 #define NIFTI_TYPE_RGBA32 2304
560 typedef struct {
float r,i; } complex_float ;
561 typedef struct {
double r,i; } complex_double ;
562 typedef struct {
long double r,i; } complex_longdouble ;
563 typedef struct {
unsigned char r,g,b; } rgb_byte ;
656 #define NIFTI_INTENT_NONE 0
688 #define NIFTI_INTENT_CORREL 2
692 #define NIFTI_INTENT_TTEST 3
697 #define NIFTI_INTENT_FTEST 4
701 #define NIFTI_INTENT_ZSCORE 5
706 #define NIFTI_INTENT_CHISQ 6
711 #define NIFTI_INTENT_BETA 7
717 #define NIFTI_INTENT_BINOM 8
723 #define NIFTI_INTENT_GAMMA 9
728 #define NIFTI_INTENT_POISSON 10
733 #define NIFTI_INTENT_NORMAL 11
739 #define NIFTI_INTENT_FTEST_NONC 12
744 #define NIFTI_INTENT_CHISQ_NONC 13
750 #define NIFTI_INTENT_LOGISTIC 14
756 #define NIFTI_INTENT_LAPLACE 15
760 #define NIFTI_INTENT_UNIFORM 16
765 #define NIFTI_INTENT_TTEST_NONC 17
772 #define NIFTI_INTENT_WEIBULL 18
780 #define NIFTI_INTENT_CHI 19
787 #define NIFTI_INTENT_INVGAUSS 20
793 #define NIFTI_INTENT_EXTVAL 21
797 #define NIFTI_INTENT_PVAL 22
805 #define NIFTI_INTENT_LOGPVAL 23
812 #define NIFTI_INTENT_LOG10PVAL 24
816 #define NIFTI_FIRST_STATCODE 2
820 #define NIFTI_LAST_STATCODE 24
828 #define NIFTI_INTENT_ESTIMATE 1001
834 #define NIFTI_INTENT_LABEL 1002
839 #define NIFTI_INTENT_NEURONAME 1003
853 #define NIFTI_INTENT_GENMATRIX 1004
866 #define NIFTI_INTENT_SYMMATRIX 1005
875 #define NIFTI_INTENT_DISPVECT 1006
876 #define NIFTI_INTENT_VECTOR 1007
889 #define NIFTI_INTENT_POINTSET 1008
902 #define NIFTI_INTENT_TRIANGLE 1009
911 #define NIFTI_INTENT_QUATERNION 1010
916 #define NIFTI_INTENT_DIMLESS 1011
922 #define NIFTI_INTENT_TIME_SERIES 2001
927 #define NIFTI_INTENT_NODE_INDEX 2002
938 #define NIFTI_INTENT_RGB_VECTOR 2003
949 #define NIFTI_INTENT_RGBA_VECTOR 2004
954 #define NIFTI_INTENT_SHAPE 2005
1215 #define NIFTI_XFORM_UNKNOWN 0
1219 #define NIFTI_XFORM_SCANNER_ANAT 1
1224 #define NIFTI_XFORM_ALIGNED_ANAT 2
1229 #define NIFTI_XFORM_TALAIRACH 3
1233 #define NIFTI_XFORM_MNI_152 4
1279 #define NIFTI_UNITS_UNKNOWN 0
1283 #define NIFTI_UNITS_METER 1
1285 #define NIFTI_UNITS_MM 2
1287 #define NIFTI_UNITS_MICRON 3
1291 #define NIFTI_UNITS_SEC 8
1293 #define NIFTI_UNITS_MSEC 16
1295 #define NIFTI_UNITS_USEC 24
1299 #define NIFTI_UNITS_HZ 32
1301 #define NIFTI_UNITS_PPM 40
1303 #define NIFTI_UNITS_RADS 48
1306 #undef XYZT_TO_SPACE
1308 #define XYZT_TO_SPACE(xyzt) ( (xyzt) & 0x07 )
1309 #define XYZT_TO_TIME(xyzt) ( (xyzt) & 0x38 )
1311 #undef SPACE_TIME_TO_XYZT
1312 #define SPACE_TIME_TO_XYZT(ss,tt) ( (((char)(ss)) & 0x07) \
1313 | (((char)(tt)) & 0x38) )
1401 #undef DIM_INFO_TO_FREQ_DIM
1402 #undef DIM_INFO_TO_PHASE_DIM
1403 #undef DIM_INFO_TO_SLICE_DIM
1405 #define DIM_INFO_TO_FREQ_DIM(di) ( ((di) ) & 0x03 )
1406 #define DIM_INFO_TO_PHASE_DIM(di) ( ((di) >> 2) & 0x03 )
1407 #define DIM_INFO_TO_SLICE_DIM(di) ( ((di) >> 4) & 0x03 )
1409 #undef FPS_INTO_DIM_INFO
1410 #define FPS_INTO_DIM_INFO(fd,pd,sd) ( ( ( ((char)(fd)) & 0x03) ) | \
1411 ( ( ((char)(pd)) & 0x03) << 2 ) | \
1412 ( ( ((char)(sd)) & 0x03) << 4 ) )
1419 #define NIFTI_SLICE_UNKNOWN 0
1420 #define NIFTI_SLICE_SEQ_INC 1
1421 #define NIFTI_SLICE_SEQ_DEC 2
1422 #define NIFTI_SLICE_ALT_INC 3
1423 #define NIFTI_SLICE_ALT_DEC 4
1424 #define NIFTI_SLICE_ALT_INC2 5
1425 #define NIFTI_SLICE_ALT_DEC2 6
1457 #define NIFTI_VERSION(h) \
1458 ( ( (h).magic[0]=='n' && (h).magic[3]=='\0' && \
1459 ( (h).magic[1]=='i' || (h).magic[1]=='+' ) && \
1460 ( (h).magic[2]>='1' && (h).magic[2]<='9' ) ) \
1461 ? (h).magic[2]-'0' : 0 )
1468 #define NIFTI_ONEFILE(h) ( (h).magic[1] == '+' )
1474 #define NIFTI_NEEDS_SWAP(h) ( (h).dim[0] < 0 || (h).dim[0] > 7 )
1480 #define NIFTI_5TH_DIM(h) ( ((h).dim[0]>4 && (h).dim[5]>1) ? (h).dim[5] : 0 )
int esize
Definition: nifti1.h:294
This structure represents a 4-byte string that should follow the binary nifti_1_header data in a NIFT...
Definition: nifti1.h:287
char * edata
Definition: nifti1.h:296
int ecode
Definition: nifti1.h:295
Data structure defining the fields of a header extension.
Definition: nifti1.h:293