VIP: Volume Image Processing


structure.h
Go to the documentation of this file.
1/*****************************************************************************
2 * PROJECT : V.I.P. Library
3 * MODULE NAME : vip/structure.h * TYPE : Header
4 * AUTHOR : MANGIN J.F. * CREATION : 19/01/1996
5 * VERSION : 0.1 * REVISION :
6 * LANGUAGE : C * EXAMPLE :
7 * DEVICE : Sun SPARC Station 5
8 *****************************************************************************
9 *
10 * DESCRIPTION : jfmangin@cea.fr
11 *
12 *****************************************************************************
13 *
14 * USED MODULES :
15 *
16 *****************************************************************************
17 * REVISIONS : DATE | AUTHOR | DESCRIPTION
18 *--------------------|--------------|----------------------------------------
19 * / / | |
20 *****************************************************************************/
21
22
23#ifndef VIP_STRUCTURE_H
24#define VIP_STRUCTURE_H
25
26
27/* volume limitation */
28
29#define VIP_IMAGE_MAXSIZE 100000 /* maximum of (Volume*)->size. */
30#define VIP_BORDER_MAXWIDTH 16 /* maximum of (Volume*)->borderWidth */
31#define VIP_VOXEL_MAXSIZE_MM 100. /*maximum for voxel dimension in mm*/
32#define VIP_VOXEL_MAXSIZE_S 1000. /*maximum for time step in seconde*/
33#define VIP_NAME_MAXLEN 1024U /* maximum of strlen((Volume*)->name) */
34#define NAME_MAXLEN 1024U /* same thing: tivoli define*/
35
36/* boolean values */
37
38#ifndef VTRUE
39#define VTRUE 1
40#endif
41#ifndef VFALSE
42#define VFALSE 0
43#endif
44
45#ifndef YES
46#define YES 1
47#endif
48#ifndef NO
49#define NO 0
50#endif
51/* value returned by testing functions */
52
53#ifndef OK
54#define OK 1
55#endif
56#ifndef PB
57#define PB 0
58#endif
59
60/* flag modes */
61
62#ifndef ON
63#define ON 1
64#endif
65#ifndef OFF
66#define OFF 0
67#endif
68
69/* volume structure (should be forgotten...)*/
70
72
73/* constant for the field (Volume*)->type */
74
75#define U8BIT 10 /* 8 bit unsigned integer */
76#define S8BIT 11 /* 8 bit signed integer */
77#define U16BIT 20 /* 16 bit unsigned integer */
78#define S16BIT 21 /* 16 bit signed integer */
79#define U32BIT 40 /* 32 bit unsigned integer */
80#define S32BIT 41 /* 32 bit signed integer */
81#define VFLOAT 400 /* simple precision real */
82#define VDOUBLE 800 /* double precision real */
83
84#define ANY_TYPE 1111
85#define ANY_INT 1110
86#define ANY_FLOAT 1000
87
88/* corresponding C declaration type */
89
90typedef unsigned char Vip_U8BIT;
91typedef signed char Vip_S8BIT;
92typedef unsigned short Vip_U16BIT;
93typedef signed short Vip_S16BIT;
94typedef unsigned long Vip_U32BIT;
95typedef signed long Vip_S32BIT;
96typedef float Vip_F32BIT;
97typedef float Vip_FLOAT;
98typedef double Vip_F64BIT;
99typedef double Vip_DOUBLE;
100
101typedef char Vip_ANY; /* any type above */
102
103#endif /*VIP_STRUCTURE_H*/
104
signed char Vip_S8BIT
Definition structure.h:91
float Vip_FLOAT
Definition structure.h:97
signed short Vip_S16BIT
Definition structure.h:93
double Vip_F64BIT
Definition structure.h:98
unsigned long Vip_U32BIT
Definition structure.h:94
double Vip_DOUBLE
Definition structure.h:99
char Vip_ANY
Definition structure.h:101
float Vip_F32BIT
Definition structure.h:96
signed long Vip_S32BIT
Definition structure.h:95
unsigned short Vip_U16BIT
Definition structure.h:92
unsigned char Vip_U8BIT
Definition structure.h:90