C----------------------------- MNI Header ------------------------------------
C@NAME : minc.inc
C@DESCRIPTION: FORTRAN include file for minc (Medical Image NetCDF)
C file format standard.
C@METHOD : Includes name definitions for NetCDF dimensions, attributes
C and variables for the following :
C NetCDF standard attributes
C MI general variable attributes
C MI dimensions and associated variables
C MI dimension variable attributes
C MI root variable
C MI image variable
C MI patient variable
C MI study variable
C MI acquisition variable
C@CREATED : March 15, 1993. (Peter Neelin, Montreal Neurological Institute)
C@MODIFIED :
C@COPYRIGHT :
C Copyright 1993 Peter Neelin, McConnell Brain Imaging Centre,
C Montreal Neurological Institute, McGill University.
C Permission to use, copy, modify, and distribute this
C software and its documentation for any purpose and without
C fee is hereby granted, provided that the above copyright
C notice appear in all copies. The author and McGill University
C make no representations about the suitability of this
C software for any purpose. It is provided "as is" without
C express or implied warranty.
C@RCSID : $Header: /software/source/minc/cvsroot/minc/fortran/minc.inc,v 6.0 1997/09/12 13:24:34 neelin Rel $ MINC (MNI)
C-----------------------------------------------------------------------------
C Some useful constants
PARAMETER MI_EMPTY_STRING=' '
C Error flags
INTEGER MI_ERROR, MI_NOERROR
PARAMETER (MI_ERROR=-1, MI_NOERROR=0)
C Maximum length of standard attributes
INTEGER MI_MAX_ATTSTR_LEN
PARAMETER (MI_MAX_ATTSTR_LEN=64)
C Number of spatial dimensions
INTEGER MI_NUM_SPACE_DIMS
PARAMETER (MI_NUM_SPACE_DIMS=3)
C Maximum number of image dimensions for image conversion
INTEGER MI_MAX_IMGDIMS
PARAMETER (MI_MAX_IMGDIMS=MAXNCDIM)
C NetCDF standard attributes
PARAMETER MIUNITS ='units'
PARAMETER MILONG_NAME ='long_name'
PARAMETER MIVALID_RANGE='valid_range'
PARAMETER MIVALID_MAX ='valid_max'
PARAMETER MIVALID_MIN ='valid_min'
PARAMETER MI_FILLVALUE ='_Fillvalue'
PARAMETER MITITLE ='title'
PARAMETER MIHISTORY ='history'
C General variable attributes
PARAMETER MIVARTYPE ='vartype'
PARAMETER MIVARID ='varid'
PARAMETER MISIGNTYPE='signtype'
PARAMETER MIPARENT ='parent'
PARAMETER MICHILDREN='children'
PARAMETER MICOMMENTS='comments'
PARAMETER MIVERSION ='version'
C General attribute constants
C Prefix for identifying a variable attribute pointer
PARAMETER MI_VARATT_POINTER_PREFIX ='--->'
C Separator for elements of MIchildren
PARAMETER MI_CHILD_SEPARATOR='\n'
C MIvartype values
PARAMETER MI_GROUP ='group________'
PARAMETER MI_DIMENSION='dimension____'
PARAMETER MI_DIM_WIDTH='dim-width____'
PARAMETER MI_VARATT ='var_attribute'
C MIvarid value
PARAMETER MI_STDVAR='MINC standard variable'
C MIsigntype values
PARAMETER MI_SIGNED ='signed__'
PARAMETER MI_UNSIGNED='unsigned'
C MIversion value
PARAMETER MI_VERSION_1_0='MINC Version 1.0'
PARAMETER MI_CURRENT_VERSION=MI_VERSION_1_0
C Generally useful values for boolean attributes
PARAMETER MI_TRUE ='true_'
PARAMETER MI_FALSE='false'
C Dimension names and names of associated variables
PARAMETER MIXSPACE ='xspace'
PARAMETER MIYSPACE ='yspace'
PARAMETER MIZSPACE ='zspace'
PARAMETER MITIME ='time'
PARAMETER MITFREQUENCY ='tfrequency'
PARAMETER MIXFREQUENCY ='xfrequency'
PARAMETER MIYFREQUENCY ='yfrequency'
PARAMETER MIZFREQUENCY ='zfrequency'
PARAMETER MIVECTOR_DIMENSION='vector_dimension'
PARAMETER MIXSPACE_WIDTH ='xspace-width'
PARAMETER MIYSPACE_WIDTH ='yspace-width'
PARAMETER MIZSPACE_WIDTH ='zspace-width'
PARAMETER MITIME_WIDTH ='time-width'
PARAMETER MITFREQUENCY_WIDTH='tfrequency-width'
PARAMETER MIXFREQUENCY_WIDTH='xfrequency-width'
PARAMETER MIYFREQUENCY_WIDTH='yfrequency-width'
PARAMETER MIZFREQUENCY_WIDTH='zfrequency-width'
C Dimension variable attribute names
C For dimension variables (MIspacing is also for dimension width vars)
PARAMETER MISPACING ='spacing'
PARAMETER MISTEP ='step'
PARAMETER MISTART ='start'
PARAMETER MISPACETYPE ='spacetype'
PARAMETER MIALIGNMENT ='alignment'
PARAMETER MIDIRECTION_COSINES='direction_cosines'
C For dimension width variables
PARAMETER MIWIDTH ='width'
PARAMETER MIFILTERTYPE ='filtertype'
C Dimension attribute constants
C MIgridtype values
PARAMETER MI_REGULAR ='regular__'
PARAMETER MI_IRREGULAR='irregular'
C MIspacetype values
PARAMETER MI_NATIVE ='native____'
PARAMETER MI_TALAIRACH='talairach_'
PARAMETER MI_CALLOSAL ='callosal__'
C MIalignment values
PARAMETER MI_START ='start_'
PARAMETER MI_CENTRE='centre'
PARAMETER MI_END ='end___'
PARAMETER MI_CENTER=MI_CENTRE
C MIfiltertype values
PARAMETER MI_SQUARE ='square____'
PARAMETER MI_GAUSSIAN ='gaussian__'
PARAMETER MI_TRIANGULAR='triangular'
C The root variable
PARAMETER MIROOTVARIABLE='rootvariable'
C The image variable and its attributes
PARAMETER MIIMAGE ='image'
PARAMETER MIIMAGEMAX='image-max'
PARAMETER MIIMAGEMIN='image-min'
PARAMETER MICOMPLETE='complete'
C The patient variable and its attributes
PARAMETER MIPATIENT ='patient'
PARAMETER MIFULL_NAME ='full_name'
PARAMETER MIOTHER_NAMES ='other_names'
PARAMETER MIIDENTIFICATION='identification'
PARAMETER MIOTHER_IDS ='other_ids'
PARAMETER MIBIRTHDATE ='birthdate'
PARAMETER MISEX ='sex'
PARAMETER MIAGE ='age'
PARAMETER MIWEIGHT ='weight'
PARAMETER MISIZE ='size'
PARAMETER MIADDRESS ='address'
PARAMETER MIINSURANCE_ID ='insurance_id'
C Patient attribute constants
PARAMETER MI_MALE ='male__'
PARAMETER MI_FEMALE='female'
PARAMETER MI_OTHER ='other_'
C The study variable and its attributes
PARAMETER MISTUDY ='study'
PARAMETER MISTART_TIME ='start_time'
PARAMETER MISTART_YEAR ='start_year'
PARAMETER MISTART_MONTH ='start_month'
PARAMETER MISTART_DAY ='start_day'
PARAMETER MISTART_HOUR ='start_hour'
PARAMETER MISTART_MINUTE ='start_minute'
PARAMETER MISTART_SECONDS ='start_seconds'
PARAMETER MIMODALITY ='modality'
PARAMETER MIMANUFACTURER ='manufacturer'
PARAMETER MIDEVICE_MODEL ='device_model'
PARAMETER MIINSTITUTION ='institution'
PARAMETER MIDEPARTMENT ='department'
PARAMETER MISTATION_ID ='station_id'
PARAMETER MIREFERRING_PHYSICIAN='referring_physician'
PARAMETER MIATTENDING_PHYSICIAN='attending_physician'
PARAMETER MIRADIOLOGIST ='radiologist'
PARAMETER MIOPERATOR ='operator'
PARAMETER MIADMITTING_DIAGNOSIS='admitting_diagnosis'
PARAMETER MIPROCEDURE ='procedure'
PARAMETER MISTUDY_ID ='study_id'
C Study attribute constants
PARAMETER MI_PET ='PET__'
PARAMETER MI_SPECT='SPECT'
PARAMETER MI_GAMMA='GAMMA'
PARAMETER MI_MRI ='MRI__'
PARAMETER MI_MRS ='MRS__'
PARAMETER MI_MRA ='MRA__'
PARAMETER MI_CT ='CT___'
PARAMETER MI_DSA ='DSA__'
PARAMETER MI_DR ='DR___'
C The acquisition variable and its attributes
PARAMETER MIACQUISITION ='acquisition'
PARAMETER MIPROTOCOL ='protocol'
PARAMETER MISCANNING_SEQUENCE ='scanning_sequence'
PARAMETER MIREPETITION_TIME ='repetition_time'
PARAMETER MIECHO_TIME ='echo_time'
PARAMETER MIINVERSION_TIME ='inversion_time'
PARAMETER MINUM_AVERAGES ='num_averages'
PARAMETER MIIMAGING_FREQUENCY ='imaging_frequency'
PARAMETER MIIMAGED_NUCLEUS ='imaged_nucleus'
PARAMETER MIRADIONUCLIDE ='radionuclide'
PARAMETER MICONTRAST_AGENT ='contrast_agent'
PARAMETER MIRADIONUCLIDE_HALFLIFE='radionuclide_halflife'
PARAMETER MITRACER ='tracer'
PARAMETER MIINJECTION_TIME ='injection_time'
PARAMETER MIINJECTION_YEAR ='injection_year'
PARAMETER MIINJECTION_MONTH ='injection_month'
PARAMETER MIINJECTION_DAY ='injection_day'
PARAMETER MIINJECTION_HOUR ='injection_hour'
PARAMETER MIINJECTION_MINUTE ='injection_minute'
PARAMETER MIINJECTION_SECONDS ='injection_seconds'
PARAMETER MIINJECTION_LENGTH ='injection_length'
PARAMETER MIINJECTION_DOSE ='injection_dose'
PARAMETER MIDOSE_UNITS ='dose_units'
PARAMETER MIINJECTION_VOLUME ='injection_volume'
PARAMETER MIINJECTION_ROUTE ='injection_route'
C Constants for image conversion variable (icv) properties
C Maximum number of icv's allowed
INTEGER MI_MAX_NUM_ICV
PARAMETER (MI_MAX_NUM_ICV=MAXNCOP)
C Default max and min for normalization
DOUBLE PRECISION MI_DEFAULT_MAX, MI_DEFAULT_MIN
PARAMETER (MI_DEFAULT_MAX=1.0)
PARAMETER (MI_DEFAULT_MIN=0.0)
C Icv properties
INTEGER MI_ICV_TYPE, MI_ICV_SIGN, MI_ICV_DO_RANGE
INTEGER MI_ICV_VALID_MAX, MI_ICV_VALID_MIN, MI_ICV_DO_NORM
INTEGER MI_ICV_USER_NORM, MI_ICV_IMAGE_MAX, MI_ICV_IMAGE_MIN
INTEGER MI_ICV_NORM_MAX, MI_ICV_NORM_MIN, MI_ICV_DO_DIM_CONV
INTEGER MI_ICV_DO_SCALAR, MI_ICV_XDIM_DIR, MI_ICV_YDIM_DIR
INTEGER MI_ICV_ZDIM_DIR, MI_ICV_ADIM_SIZE, MI_ICV_BDIM_SIZE
INTEGER MI_ICV_KEEP_ASPECT, MI_ICV_ADIM_STEP, MI_ICV_BDIM_STEP
INTEGER MI_ICV_ADIM_START, MI_ICV_BDIM_START, MI_ICV_NUM_IMGDIMS
INTEGER MI_ICV_NUM_DIMS, MI_ICV_CDFID, MI_ICV_VARID
INTEGER MI_ICV_MAXVAR, MI_ICV_MINVAR, MI_ICV_DIM_SIZE
INTEGER MI_ICV_DIM_STEP, MI_ICV_DIM_START
INTEGER MI_ICV_DO_FILLVALUE, MI_ICV_FILLVALUE
C For converting data type
PARAMETER (MI_ICV_TYPE =1)
PARAMETER (MI_ICV_SIGN =2)
PARAMETER (MI_ICV_DO_RANGE =3)
PARAMETER (MI_ICV_VALID_MAX =4)
PARAMETER (MI_ICV_VALID_MIN =5)
C For doing normalization
PARAMETER (MI_ICV_DO_NORM =6)
PARAMETER (MI_ICV_USER_NORM =7)
PARAMETER (MI_ICV_IMAGE_MAX =8)
PARAMETER (MI_ICV_IMAGE_MIN =9)
C Values actually used in normalization - read-only
PARAMETER (MI_ICV_NORM_MAX =10)
PARAMETER (MI_ICV_NORM_MIN =11)
C For doing dimension conversions
PARAMETER (MI_ICV_DO_DIM_CONV =12)
C For converting vector fields to scalar
PARAMETER (MI_ICV_DO_SCALAR =13)
C For flipping axis direction
PARAMETER (MI_ICV_XDIM_DIR =14)
PARAMETER (MI_ICV_YDIM_DIR =15)
PARAMETER (MI_ICV_ZDIM_DIR =16)
C For changing size of first two dimensions (excluding mivector_dimension)
PARAMETER (MI_ICV_ADIM_SIZE =17)
PARAMETER (MI_ICV_BDIM_SIZE =18)
PARAMETER (MI_ICV_KEEP_ASPECT =19)
C The pixel size and location of first two dimensions (these are readonly)
PARAMETER (MI_ICV_ADIM_STEP =20)
PARAMETER (MI_ICV_BDIM_STEP =21)
PARAMETER (MI_ICV_ADIM_START =22)
PARAMETER (MI_ICV_BDIM_START =23)
C Number of image dimensions for dimension conversion
PARAMETER (MI_ICV_NUM_IMGDIMS =24)
C Number of dimensions of image variable taking into account vector/scalar
C data (read-only property)
PARAMETER (MI_ICV_NUM_DIMS =25)
C Id of file and image variable (read-only properties)
PARAMETER (MI_ICV_CDFID =26)
PARAMETER (MI_ICV_VARID =27)
C Names of MIimagemax and MIimagemin variables
PARAMETER (MI_ICV_MAXVAR =28)
PARAMETER (MI_ICV_MINVAR =29)
C For setting input values to a specified fillvalue
PARAMETER (MI_ICV_DO_FILLVALUE =30)
PARAMETER (MI_ICV_FILLVALUE =31)
C Image dimension properties. for each dimension, add the dimension
C number (counting from fastest to slowest).
PARAMETER (MI_ICV_DIM_SIZE =1000)
PARAMETER (MI_ICV_DIM_STEP =1100)
PARAMETER (MI_ICV_DIM_START =1200)
C Constants that can be used as values for the above properties.
C possible values for mi_icv_?dim_dir
INTEGER MI_ICV_POSITIVE, MI_ICV_NEGATIVE, MI_ICV_ANYDIR
PARAMETER (MI_ICV_POSITIVE =1)
PARAMETER (MI_ICV_NEGATIVE =-1)
PARAMETER (MI_ICV_ANYDIR =0)
C Possible value for mi_icv_?dim_size
INTEGER MI_ICV_ANYSIZE
PARAMETER (MI_ICV_ANYSIZE =-1)
C Error codes
C Note that they must not conflict with netcdf error codes since
C they are stored in the same global variable.
INTEGER MI_ERR_NONNUMERIC, MI_ERR_NONCHAR, MI_ERR_NONSCALAR
INTEGER MI_ERR_BADOP, MI_ERR_NOTPOINTER, MI_ERR_BAD_STDVAR
INTEGER MI_ERR_BADSUFFIX, MI_ERR_NOICV, MI_ERR_BADICV
INTEGER MI_ERR_BADPROP, MI_ERR_ICVATTACHED, MI_ERR_TOOFEWDIMS
INTEGER MI_ERR_ICVNOTATTACHED, MI_ERR_DIMSIZE
INTEGER MI_ERR_ICV_INVCOORDS, MI_ERR_WRONGNDIMS, MI_ERR_BADMATCH
INTEGER MI_ERR_MAXMIN_DIMS
PARAMETER (MI_ERR_NONNUMERIC =1331)
PARAMETER (MI_ERR_NONCHAR =1332)
PARAMETER (MI_ERR_NONSCALAR =1333)
PARAMETER (MI_ERR_BADOP =1334)
PARAMETER (MI_ERR_NOTPOINTER =1335)
PARAMETER (MI_ERR_BAD_STDVAR =1336)
PARAMETER (MI_ERR_BADSUFFIX =1337)
PARAMETER (MI_ERR_NOICV =1338)
PARAMETER (MI_ERR_BADICV =1339)
PARAMETER (MI_ERR_BADPROP =1340)
PARAMETER (MI_ERR_ICVATTACHED =1341)
PARAMETER (MI_ERR_TOOFEWDIMS =1342)
PARAMETER (MI_ERR_ICVNOTATTACHED =1343)
PARAMETER (MI_ERR_DIMSIZE =1344)
PARAMETER (MI_ERR_ICV_INVCOORDS =1345)
PARAMETER (MI_ERR_WRONGNDIMS =1346)
PARAMETER (MI_ERR_BADMATCH =1347)
PARAMETER (MI_ERR_MAXMIN_DIMS =1348)
C Function and subroutine declarations
EXTERNAL MIOPN, MICRE, MICLOSE
EXTERNAL MIAGT, MIAGT1, MIVGT, MIVGT1, MIVPT, MIVPT1
EXTERNAL MISTCD, MITRCD, MICAAT, MICVD, MICVV, MICAVD
EXTERNAL MICAVV, MIAPTP, MIAGTP, MICHLD, MISTDV, MIGRPV
EXTERNAL ICVCRT, ICVFRE, ICVSTD, ICVSTI, ICVSTS, ICVNQD
EXTERNAL ICVNQI, ICVNQS, ICVNDA, ICVDET, ICVGET, ICVPUT
EXTERNAL ICVATT
INTEGER MIOPN, MICRE
INTEGER MIAGTP, MICVD, MISTDV, MIGRPV
INTEGER ICVCRT
syntax highlighted by Code2HTML, v. 0.9.1