/usr/include/m-anlz.h is in libmdc2-dev 0.14.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* filename: m-anlz.h *
* *
* UTIL C-source: Medical Image Conversion Utility *
* *
* purpose : m-anlz.c header file *
* *
* project : (X)MedCon by Erik Nolf *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* $Id: m-anlz.h,v 1.21 2015/12/22 13:59:29 enlf Exp $
*/
/*
Copyright (C) 1997-2016 by Erik Nolf
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2, or (at your option) any later
version.
This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
59 Place - Suite 330, Boston, MA 02111-1307, USA. */
#ifndef __M_ANLZ_H__
#define __M_ANLZ_H__
/****************************************************************************
D E F I N E S
****************************************************************************/
#define MDC_ANLZ_SIG 'r'
#define MDC_ANLZ_MAX_DIMS 8 /* maximum number of dimensions */
/* datatypes */
#define MDC_ANLZ_DT_UNKNOWN 0
#define MDC_ANLZ_DT_BINARY 1 /* 1-bit */
#define MDC_ANLZ_DT_UNSIGNED_CHAR 2 /* Uint8 */
#define MDC_ANLZ_DT_SIGNED_SHORT 4 /* Int16 */
#define MDC_ANLZ_DT_SIGNED_INT 8 /* Int32 */
#define MDC_ANLZ_DT_FLOAT 16 /* float */
#define MDC_ANLZ_DT_COMPLEX 32 /* 2 x float */ /* unsupported */
#define MDC_ANLZ_DT_DOUBLE 64 /* double */
#define MDC_ANLZ_DT_RGB 128 /* 3 x Uint8 */ /* unsupported */
#define MDC_ANLZ_DT_ALL 255 /* All */ /* unsupported */
/* orient types */
#define MDC_ANLZ_TRANS_UNFLIPPED 0
#define MDC_ANLZ_CORON_UNFLIPPED 1
#define MDC_ANLZ_SAGIT_UNFLIPPED 2
#define MDC_ANLZ_TRANS_FLIPPED 3
#define MDC_ANLZ_CORON_FLIPPED 4
#define MDC_ANLZ_SAGIT_FLIPPED 5
typedef struct Header_Key_t {
Int32 sizeof_hdr; /* 348 or 148 */
char data_type[10]; /* "dsr" */
char db_name[18]; /* filename without extension */
Int32 extents;
Int16 session_error;
char regular; /* 'r' */
char hkey_un0;
} MDC_ANLZ_HEADER_KEY;
#define MDC_ANLZ_HK_SIZE 40
typedef struct Image_Dimensions_t {
Int16 dim[MDC_ANLZ_MAX_DIMS]; /* [0] = # of dimensions */
/* [1] = X-dim */
/* [2] = Y-dim */
/* [3] = Z-dim */
/* [4] = t-dim */
/* ... */
char avw_vox_units[4]; /* AVW real world dim units */
char avw_cal_units[8]; /* AVW real world pix units */
Int16 unused1;
Int16 datatype; /* pixel type */
/* 0 = Unknown 1 = one-bit */
/* 2 = Uint8 4 = Int16 */
/* 8 = Int32 16 = float */
/* 32 = complex 64 = double */
Int16 bitpix; /* bits per pixel */
Int16 dim_un0;
float pixdim[MDC_ANLZ_MAX_DIMS]; /* [0] = # of dimensions */
/* [1] = X-dim (mm) */
/* [2] = Y-dim (mm) */
/* [3] = Z-dim (mm) */
/* [4] = t-dim (ms) */
/* ... */
float avw_vox_offset; /* AVW offset to pixel data */
float spm_pix_rescale; /* SPM pixel rescale factor */
float funused1;
float funused2;
float avw_cal_max; /* AVW max calibrated values */
float avw_cal_min; /* AVW min calibrated values */
float compressed;
float verified;
Int32 glmax,glmin;
} MDC_ANLZ_IMAGE_DIMS;
#define MDC_ANLZ_IMD_SIZE 108
typedef struct Data_History_t {
char descrip[80];
char aux_file[24];
char orient; /* patient orientation */
/* 0 = transverse unflipped */
/* 1 = coronal unflipped */
/* 2 = sagittal unflipped */
/* 3 = transverse flipped */
/* 4 = coronal flipped */
/* 5 = sagittal flipped */
char originator[10];
char generated[10];
char scannum[10];
char patient_id[10];
char exp_date[10];
char exp_time[10];
char hist_un0[3];
Int32 views;
Int32 vols_added;
Int32 start_field;
Int32 field_skip;
Int32 omax, omin;
Int32 smax, smin;
} MDC_ANLZ_DATA_HIST;
#define MDC_ANLZ_DH_SIZE 200
typedef struct MdcSpmOpt_t {
Int16 origin_x;
Int16 origin_y;
Int16 origin_z;
float offset;
} MDC_SPMOPT;
/****************************************************************************
F U N C T I O N S
****************************************************************************/
int MdcCheckANLZ(FILEINFO *fi);
const char *MdcReadANLZ(FILEINFO *fi);
const char *MdcWriteANLZ(FILEINFO *fi);
int MdcWriteHeaderKey(FILEINFO *fi);
int MdcWriteImageDimension(FILEINFO *fi, MDC_SPMOPT *opt);
int MdcWriteDataHistory(FILEINFO *fi, MDC_SPMOPT *opt);
char *MdcWriteImagesData(FILEINFO *fi);
void MdcGetSpmOpt(FILEINFO *fi, MDC_SPMOPT *opt);
#endif
|