/usr/include/m-defs.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 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
* filename: m-defs.h *
* *
* UTIL C-source: Medical Image Conversion Utility *
* *
* purpose : project variables, structs & datatypes *
* *
* project : (X)MedCon by Erik Nolf *
* *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
/* $Id: m-defs.h,v 1.62 2015/12/22 13:59:30 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_DEFS_H__
#define __M_DEFS_H__
#include "m-config.h"
/**************************
COMPILATION CONDITIONALS
**************************/
#ifdef _WIN32
/* dos/mswindows */
#define MDC_PATH_DELIM_STR "\\"
#define MDC_PATH_DELIM_CHR '\\'
#define MDC_NEWLINE "\r\n"
#else
/* unix/linux */
#define MDC_PATH_DELIM_STR "/"
#define MDC_PATH_DELIM_CHR '/'
#define MDC_NEWLINE "\n"
#endif
/* For output formats without slice_spacing key, it is prefered
* to use slice_spacing as the slice_width parameter, and thus
* virtually "eliminating" any gaps/overlaps between those sices.
* If not wanted, comment out following define line.
*/
#define MDC_USE_SLICE_SPACING 1
/*******************
PORTABILITY TYPES
*******************/
/* 16 bit type */
#if (MDC_SIZEOF_INT == 2)
# define INT_2BYTE
#elif (MDC_SIZEOF_SHORT == 2)
# define SHORT_2BYTE
#else
# error "What!? No 16-bit integer type available!"
#endif
/* 32 bit type */
#if (MDC_SIZEOF_INT == 4)
# define INT_4BYTE
#elif (MDC_SIZEOF_LONG == 4)
# define LONG_4BYTE
#else
# error "What!? No 32-bit integer type available!"
#endif
/* 64 bit type */
#ifdef MDC_SIZEOF_LONG_LONG
#if (MDC_SIZEOF_LONG_LONG == 8)
# define LONG_LONG_8BYTE
#endif
#else
#if (MDC_SIZEOF_LONG == 8)
# define LONG_8BYTE
#endif
#endif
/****************************************************************************
D E F I N E S
****************************************************************************/
#define MDC_ONE 1
#define MDC_ZERO 0
#define MDC_FALSE (0)
#define MDC_TRUE (!MDC_FALSE)
#define MDC_UNKNOWN MDC_ZERO
#define MDC_LITTLE_ENDIAN MDC_ONE
#define MDC_BIG_ENDIAN MDC_ZERO
#define MDC_1KB_OFFSET 1024
#define MDC_2KB_OFFSET 2048
#define MDC_INPUT_NORM_STYLE 1
#define MDC_INPUT_ECAT_STYLE 2
#define MDC_MAX_PATH 256
#define MDC_MAX_LIST 256
#define MDC_YES MDC_ONE
#define MDC_NO MDC_ZERO
#define MDC_ARG_FILE 0
#define MDC_ARG_CONV 1
#define MDC_ARG_EXTRACT 2
#define MDC_FILES 0
#define MDC_CONVS 1
/* precision */
#define MDC_FLT_EPSILON 1.1920928955078125e-07
/* passess */
#define MDC_PASS0 0
#define MDC_PASS1 1
#define MDC_PASS2 2
/* output message levels */
#define MDC_LEVEL_MESG 1
#define MDC_LEVEL_WARN 2
#define MDC_LEVEL_ERR 3
#define MDC_LEVEL_ALL 4
/* supported color maps */
#define MDC_MAP_PRESENT MDC_ZERO /* 256 RGB colormap */
#define MDC_MAP_GRAY 1 /* grayscale colormap */
#define MDC_MAP_INVERTED 2 /* inverted colormap */
#define MDC_MAP_RAINBOW 3 /* rainbow colormap */
#define MDC_MAP_COMBINED 4 /* combined colormap */
#define MDC_MAP_HOTMETAL 5 /* hotmetal colormap */
#define MDC_MAP_LOADED 6 /* loaded colormap */
/* supported color modes */
#define MDC_COLOR_INDEXED 0 /* 256 indexed colors */
#define MDC_COLOR_RGB 1 /* 24bit true colors */
/* supported formats */
#define MDC_FRMT_BAD MDC_ZERO
#define MDC_FRMT_NONE MDC_FRMT_BAD
#define MDC_FRMT_RAW 1
#define MDC_FRMT_ASCII 2
#define MDC_FRMT_GIF 3
#define MDC_FRMT_ACR 4
#define MDC_FRMT_INW 5
#define MDC_FRMT_ECAT6 6
#define MDC_FRMT_ECAT7 7
#define MDC_FRMT_INTF 8
#define MDC_FRMT_ANLZ 9
#define MDC_FRMT_DICM 10
#define MDC_FRMT_PNG 11
#define MDC_FRMT_CONC 12
#define MDC_FRMT_NIFTI 13
#define MDC_MAX_FRMTS 14 /* total+1 conversion formats supported */
/* acquisition types */ /* InterFile and DICOM */
#define MDC_ACQUISITION_UNKNOWN MDC_ZERO /* unknown = static */
#define MDC_ACQUISITION_STATIC 1 /* static, simple default */
#define MDC_ACQUISITION_DYNAMIC 2 /* dynamic */
#define MDC_ACQUISITION_TOMO 3 /* tomographic */
#define MDC_ACQUISITION_GATED 4 /* gated */
#define MDC_ACQUISITION_GSPECT 5 /* gated spect */
#define MDC_MAX_ACQUISITIONS 6 /* total acquisitions + 1 */
/* ECAT sort order */
#define MDC_ANATOMICAL 1
#define MDC_BYFRAME 2
/* pat_orient */
#define MDC_LEFT 1
#define MDC_RIGHT 2
#define MDC_ANTERIOR 3
#define MDC_POSTERIOR 4
#define MDC_HEAD 5
#define MDC_FEET 6
/* patient rotation */
#define MDC_SUPINE 1 /* on the back */
#define MDC_PRONE 2 /* on the face */
#define MDC_DECUBITUS_RIGHT 3 /* on the right side */
#define MDC_DECUBITUS_LEFT 4 /* on the left side */
/* patient orientation */
#define MDC_HEADFIRST 1 /* head first in scanner */
#define MDC_FEETFIRST 2 /* feet first in scanner */
/* slice orientation */ /* consider a patient on */
/* his back on the table, */
/* then the direction is: */
#define MDC_TRANSAXIAL 1 /* // device ;_|_ ground */
#define MDC_SAGITTAL 2 /* _|_ device ;_|_ ground */
#define MDC_CORONAL 3 /* _|_ device ; // ground */
/* patient/slice combined */
#define MDC_SUPINE_HEADFIRST_TRANSAXIAL 1
#define MDC_SUPINE_HEADFIRST_SAGITTAL 2
#define MDC_SUPINE_HEADFIRST_CORONAL 3
#define MDC_SUPINE_FEETFIRST_TRANSAXIAL 4
#define MDC_SUPINE_FEETFIRST_SAGITTAL 5
#define MDC_SUPINE_FEETFIRST_CORONAL 6
#define MDC_PRONE_HEADFIRST_TRANSAXIAL 7
#define MDC_PRONE_HEADFIRST_SAGITTAL 8
#define MDC_PRONE_HEADFIRST_CORONAL 9
#define MDC_PRONE_FEETFIRST_TRANSAXIAL 10
#define MDC_PRONE_FEETFIRST_SAGITTAL 11
#define MDC_PRONE_FEETFIRST_CORONAL 12
#define MDC_DECUBITUS_RIGHT_HEADFIRST_TRANSAXIAL 13
#define MDC_DECUBITUS_RIGHT_HEADFIRST_SAGITTAL 14
#define MDC_DECUBITUS_RIGHT_HEADFIRST_CORONAL 15
#define MDC_DECUBITUS_RIGHT_FEETFIRST_TRANSAXIAL 16
#define MDC_DECUBITUS_RIGHT_FEETFIRST_SAGITTAL 17
#define MDC_DECUBITUS_RIGHT_FEETFIRST_CORONAL 18
#define MDC_DECUBITUS_LEFT_HEADFIRST_TRANSAXIAL 19
#define MDC_DECUBITUS_LEFT_HEADFIRST_SAGITTAL 20
#define MDC_DECUBITUS_LEFT_HEADFIRST_CORONAL 21
#define MDC_DECUBITUS_LEFT_FEETFIRST_TRANSAXIAL 22
#define MDC_DECUBITUS_LEFT_FEETFIRST_SAGITTAL 23
#define MDC_DECUBITUS_LEFT_FEETFIRST_CORONAL 24
#define MDC_MAX_ORIENT 25 /* total orientations + 1 */
/* detector rotation */
#define MDC_ROTATION_CW 1 /* clockwise */
#define MDC_ROTATION_CC 2 /* counter-clocwise */
/* detector motion */
#define MDC_MOTION_STEP 1 /* stepped */
#define MDC_MOTION_CONT 2 /* continuous */
#define MDC_MOTION_DRNG 3 /* during step */
/* gated spect nesting outer level */
#define MDC_GSPECT_NESTING_SPECT 1
#define MDC_GSPECT_NESTING_GATED 2
/* gated heart rate */
#define MDC_HEART_RATE_ACQUIRED 1
#define MDC_HEART_RATE_OBSERVED 2
/* image padding */
#define MDC_PAD_AROUND 1
#define MDC_PAD_TOP_LEFT 2
#define MDC_PAD_BOTTOM_RIGHT 3
/* some maximum limits */
#define MDC_MAX_FILES 10000 /* maximum files handled */
/* 3-char prefix: 34696 uniques */
#define MDC_MAXSTR 35 /* max length of strings */
#define MDC_BUF_ITMS 10 /* realloc per BUF_ITMS items */
#define MDC_CHAR_BUF 100 /* max chars for string buffer */
#define MDC_MAX_PREFIX 15 /* max chars for prefix */
/* pixel types */
#define BIT1 1 /* 1-bit */
#define BIT8_S 2 /* 8-bit signed */
#define BIT8_U 3 /* 8-bit unsigned */
#define BIT16_S 4 /* 16-bit signed */
#define BIT16_U 5 /* 16-bit unsigned */
#define BIT32_S 6 /* 32-bit signed */
#define BIT32_U 7 /* 32-bit unsigned */
#define BIT64_S 8 /* 64-bit signed */
#define BIT64_U 9 /* 64-bit unsigned */
#define FLT32 10 /* 32-bit float */
#define FLT64 11 /* 64-bit double */
#define ASCII 12 /* ascii */
#define VAXFL32 13 /* 32-bit vaxfloat */
#define COLRGB 20 /* RGB triplets */
/* define maximum integer values */
#define MDC_MAX_BIT8_U 255
#define MDC_MAX_BIT16_S ((1<<16)/2) - 1
/* file compression type */
#define MDC_COMPRESS 1
#define MDC_GZIP 2
/* 8 bit type */
typedef signed char Int8;
typedef unsigned char Uint8;
/* 16 bit type */
#ifdef SHORT_2BYTE
typedef signed short Int16;
typedef unsigned short Uint16;
#elif INT_2BYTE
typedef signed int Int16;
typedef unsigned int Uint16;
#endif
/* 32 bit type */
#ifdef INT_4BYTE
typedef signed int Int32;
typedef unsigned int Uint32;
#elif LONG_4BYTE
typedef signed long Int32;
typedef unsigned long Uint32;
#endif
/* 64 bit type */
#ifdef LONG_8BYTE
#define HAVE_8BYTE_INT
typedef signed long Int64;
typedef unsigned long Uint64;
#else
#ifdef LONG_LONG_8BYTE
#define HAVE_8BYTE_INT
typedef signed long long Int64;
typedef unsigned long long Uint64;
#endif
#endif
/* define different modalities */
typedef enum {
M_AS=('A'<<8)|'S', /* Angioscopy */
M_AU=('A'<<8)|'U', /* Audio */
M_BI=('B'<<8)|'I', /* Biomagnetic Imaging */
M_CD=('C'<<8)|'D', /* Color Flow Doppler */
M_CF=('C'<<8)|'F', /* Cinefluorography */
M_CP=('C'<<8)|'P', /* Culposcopy */
M_CR=('C'<<8)|'R', /* Computed Radiography */
M_CS=('C'<<8)|'S', /* Cystoscopy */
M_CT=('C'<<8)|'T', /* Computed Tomography */
M_DD=('D'<<8)|'D', /* Duplex Doppler */
M_DF=('D'<<8)|'F', /* Digital Fluoroscopy */
M_DG=('D'<<8)|'G', /* Diaphanography */
M_DM=('D'<<8)|'M', /* Digital Microscopy */
M_DS=('D'<<8)|'S', /* Digital Substraction Angiography */
M_DX=('D'<<8)|'X', /* Digital Radiography */
M_EC=('E'<<8)|'C', /* Echocardiography */
M_ES=('E'<<8)|'S', /* Endoscopy */
M_FA=('F'<<8)|'A', /* Fluorescein Angiography */
M_FS=('F'<<8)|'S', /* Fundoscopy */
M_GM=('G'<<8)|'M', /* General Microscopy */
M_HD=('H'<<8)|'D', /* Hemodynamic Waveform */
M_IO=('I'<<8)|'O', /* Intra-Oral Radiography */
M_HC=('H'<<8)|'C', /* Hardcopy */
M_LP=('L'<<8)|'P', /* Laparoscopy */
M_MA=('M'<<8)|'A', /* Magnetic Resonance Angiography */
M_MG=('M'<<8)|'G', /* Mammography */
M_MR=('M'<<8)|'R', /* Magnetic Resonance */
M_MS=('M'<<8)|'S', /* Magnetic Resonance Spectroscopy */
M_NM=('N'<<8)|'M', /* Nuclear Medicine */
M_OT=('O'<<8)|'T', /* Other */
M_PT=('P'<<8)|'T', /* Positron Emission Tomography */
M_PX=('P'<<8)|'X', /* Panoramic X-Ray */
M_RF=('R'<<8)|'F', /* Radio Fluoroscopy */
M_RG=('R'<<8)|'G', /* Radiographic Imaging */
M_RT=('R'<<8)|'T', /* Radiotherapy */
M_SM=('S'<<8)|'M', /* Slide Microscopy */
M_SR=('S'<<8)|'R', /* SR Document */
M_ST=('S'<<8)|'T', /* Single-Photon Emission Computed Tomography */
M_TG=('T'<<8)|'G', /* Thermography */
M_US=('U'<<8)|'S', /* Ultrasound */
M_VF=('V'<<8)|'F', /* Videofluorography */
M_XA=('X'<<8)|'A', /* X-Ray Angiography */
M_XC=('X'<<8)|'C' /* External-Camera Photography */
}
MDC_MODALITY;
#endif /* __M_DEFS_H__ */
|