aimsdata 6.0.0
Neuroimaging data handling
dbh.h
Go to the documentation of this file.
1/* This software and supporting documentation are distributed by
2 * Institut Federatif de Recherche 49
3 * CEA/NeuroSpin, Batiment 145,
4 * 91191 Gif-sur-Yvette cedex
5 * France
6 *
7 * This software is governed by the CeCILL-B license under
8 * French law and abiding by the rules of distribution of free software.
9 * You can use, modify and/or redistribute the software under the
10 * terms of the CeCILL-B license as circulated by CEA, CNRS
11 * and INRIA at the following URL "http://www.cecill.info".
12 *
13 * As a counterpart to the access to the source code and rights to copy,
14 * modify and redistribute granted by the license, users are provided only
15 * with a limited warranty and the software's author, the holder of the
16 * economic rights, and the successive licensors have only limited
17 * liability.
18 *
19 * In this respect, the user's attention is drawn to the risks associated
20 * with loading, using, modifying and/or developing or reproducing the
21 * software by the user in light of its specific status of free software,
22 * that may mean that it is complicated to manipulate, and that also
23 * therefore means that it is reserved for developers and experienced
24 * professionals having in-depth computer knowledge. Users are therefore
25 * encouraged to load and test the software's suitability as regards their
26 * requirements in conditions enabling the security of their systems and/or
27 * data to be ensured and, more generally, to use and operate it in the
28 * same conditions as regards security.
29 *
30 * The fact that you are presently reading this means that you have had
31 * knowledge of the CeCILL-B license and that you accept its terms.
32 */
33
34struct header_key /* header_key */
35 { /* off + size*/
36 int sizeof_hdr; /* 0 + 4 */
37 char data_type[10]; /* 4 + 10 */
38 char db_name[18]; /* 14 + 18 */
39 int extents; /* 32 + 4 */
40 short int session_error; /* 36 + 2 */
41 char regular; /* 38 + 1 */
42 char hkey_un0; /* 39 + 1 */
43 }; /* total=40 */
44
45struct image_dimension /* image_dimension */
46 { /* off + size*/
47 short int dim[8]; /* 0 + 16 */
48 char vox_units[4]; /* 16 + 4 */
49 char cal_units[8]; /* 20 + 4 */
50 short int unused1; /* 24 + 2 */
51 short int datatype; /* 30 + 2 */
52 short int bitpix; /* 32 + 2 */
53 short int dim_un0; /* 34 + 2 */
54 float pixdim[8]; /* 36 + 32 */
55 /*
56 pixdim[] specifies the voxel dimensions:
57 pixdim[1] - voxel width
58 pixdim[2] - voxel height
59 pixdim[3] - interslice distance
60 ..etc
61 */
62 float vox_offset; /* 68 + 4 */
63 float roi_scale; /* 72 + 4 */
64 float funused1; /* 76 + 4 */
65 float funused2; /* 80 + 4 */
66 float cal_max; /* 84 + 4 */
67 float cal_min; /* 88 + 4 */
68 int compressed; /* 92 + 4 */
69 int verified; /* 96 + 4 */
70 int glmax, glmin; /* 100 + 8 */
71 }; /* total=108 */
72
73struct data_history /* data_history */
74 { /* off + size*/
75 char descrip[80]; /* 0 + 80 */
76 char aux_file[24]; /* 80 + 24 */
77 char orient; /* 104 + 1 */
78 char originator[10]; /* 105 + 10 */
79 char generated[10]; /* 115 + 10 */
80 char scannum[10]; /* 125 + 10 */
81 char patient_id[10]; /* 135 + 10 */
82 char exp_date[10]; /* 145 + 10 */
83 char exp_time[10]; /* 155 + 10 */
84 char hist_un0[3]; /* 165 + 3 */
85 int views; /* 168 + 4 */
86 int vols_added; /* 172 + 4 */
87 int start_field; /* 176 + 4 */
88 int field_skip; /* 180 + 4 */
89 int omax,omin; /* 184 + 8 */
90 int smax,smin; /* 192 + 8 */
91 }; /* total=200 */
92
93struct dsr /* dsr */
94 { /* off + size*/
95 struct header_key hk; /* 0 + 40 */
96 struct image_dimension dime; /* 40 + 108 */
97 struct data_history hist; /* 148 + 200 */
98 }; /* total=348 */
99
100/* Acceptable values for hdr.dime.datatype */
101
102#define DT_NONE 0
103#define DT_UNKNOWN 0
104#define DT_BINARY 1
105#define DT_UNSIGNED_CHAR 2
106#define DT_SIGNED_SHORT 4
107#define DT_SIGNED_INT 8
108#define DT_FLOAT 16
109#define DT_COMPLEX 32
110#define DT_DOUBLE 64
111#define DT_RGB 128
112#define DT_ALL 255
113
114typedef struct
115 {
116 float real;
117 float imag;
118 } COMPLEX;
119
Definition dbh.h:115
float imag
Definition dbh.h:117
float real
Definition dbh.h:116
char exp_time[10]
Definition dbh.h:83
int vols_added
Definition dbh.h:86
char scannum[10]
Definition dbh.h:80
char hist_un0[3]
Definition dbh.h:84
char generated[10]
Definition dbh.h:79
int start_field
Definition dbh.h:87
int smax
Definition dbh.h:90
char patient_id[10]
Definition dbh.h:81
char descrip[80]
Definition dbh.h:75
char orient
Definition dbh.h:77
int smin
Definition dbh.h:90
int field_skip
Definition dbh.h:88
char originator[10]
Definition dbh.h:78
char aux_file[24]
Definition dbh.h:76
char exp_date[10]
Definition dbh.h:82
int views
Definition dbh.h:85
int omax
Definition dbh.h:89
int omin
Definition dbh.h:89
Definition dbh.h:94
struct data_history hist
Definition dbh.h:97
struct image_dimension dime
Definition dbh.h:96
struct header_key hk
Definition dbh.h:95
short int session_error
Definition dbh.h:40
char hkey_un0
Definition dbh.h:42
int sizeof_hdr
Definition dbh.h:36
char data_type[10]
Definition dbh.h:37
char regular
Definition dbh.h:41
int extents
Definition dbh.h:39
char db_name[18]
Definition dbh.h:38
float cal_max
Definition dbh.h:66
short int datatype
Definition dbh.h:51
short int unused1
Definition dbh.h:50
int glmax
Definition dbh.h:70
float funused1
Definition dbh.h:64
float vox_offset
Definition dbh.h:62
float funused2
Definition dbh.h:65
int verified
Definition dbh.h:69
int compressed
Definition dbh.h:68
float pixdim[8]
Definition dbh.h:54
float roi_scale
Definition dbh.h:63
float cal_min
Definition dbh.h:67
short int dim_un0
Definition dbh.h:53
short int dim[8]
Definition dbh.h:47
char cal_units[8]
Definition dbh.h:49
int glmin
Definition dbh.h:70
short int bitpix
Definition dbh.h:52
char vox_units[4]
Definition dbh.h:48