GSI Object Oriented Online Offline (Go4)  GO4-6.3.0
typedefs.h
Go to the documentation of this file.
1 // $Id$
2 //-----------------------------------------------------------------------
3 // The GSI Online Offline Object Oriented (Go4) Project
4 // Experiment Data Processing at EE department, GSI
5 //-----------------------------------------------------------------------
6 // Copyright (C) 2000- GSI Helmholtzzentrum fuer Schwerionenforschung GmbH
7 // Planckstr. 1, 64291 Darmstadt, Germany
8 // Contact: http://go4.gsi.de
9 //-----------------------------------------------------------------------
10 // This software can be used under the license agreements as stated
11 // in Go4License.txt file which is part of the distribution.
12 //-----------------------------------------------------------------------
13 
14 /* This central include file defines data types for all platforms */
15 
16 #ifndef TYPEDEF_H
17 #define TYPEDEF_H
18 
19 /* Platform independent definitions */
20 
21 typedef char CHARS;
22 typedef unsigned char CHARU;
23 typedef char CHARX;
24 typedef char INTS1;
25 typedef unsigned char INTU1;
26 typedef short INTS2;
27 typedef unsigned short INTU2;
28 typedef int INTS4;
29 typedef unsigned int INTU4;
30 typedef float REAL4;
31 typedef double REAL8;
32 
33 /* Platform specific definitions */
34 
35 #ifdef _MSC_VER
36 #define MBS_ENDIAN 0 /* little endian */
37 #define GSI__WINNT
38 #include "typedefs_nt.h"
39 #ifdef WIN64
40 typedef unsigned long long ADDRS;
41 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
42 #else
43 typedef unsigned long ADDRS;
44 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
45 #endif
46 #endif
47 
48 
49 #ifdef Linux
50 #define MBS_ENDIAN 0 /* little endian */
51 #define GSI__LINUX
52 #define GSI__UNIX
53 typedef unsigned long ADDRS;
54 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
55 #endif
56 
57 #ifdef Solaris
58 #define MBS_ENDIAN 1 /* big endian */
59 #define GSI__SOLARIS
60 #define GSI__SLARIS
61 typedef unsigned long ADDRS;
62 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
63 #endif
64 
65 
66 #ifdef Darwin
67 #define MBS_ENDIAN 0 /* little endian */
68 #define GSI__LINUX
69 #define GSI__UNIX
70 typedef unsigned long ADDRS;
71 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
72 #endif
73 
74 
75 #ifdef _AIX
76 #define MBS_ENDIAN 1 /* big endian */
77 #define GSI__AIX
78 #define GSI__UNIX
79 typedef long long INTS8;
80 typedef unsigned long long INTU8;
81 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
82 typedef unsigned long ADDRS;
83 #endif
84 
85 #ifdef __osf__
86 #ifdef __alpha
87 #define MBS_ENDIAN 1 /* big endian */
88 #define AXP
89 #define GSI__UNIX_AXP
90 #define GSI__UNIX
91 typedef long INTS8;
92 typedef unsigned long INTU8;
93 typedef unsigned long ADDRS;
94 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
95 #endif
96 #endif
97 
98 #ifdef _HPUX_SOURCE
99 #define MBS_ENDIAN 1 /* big endian */
100 #define GSI__HPUX
101 #define GSI__UNIX
102 typedef long INTS8;
103 typedef unsigned long INTU8;
104 typedef unsigned long ADDRS;
105 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
106 #endif
107 
108 #ifdef Lynx
109 #define MBS_ENDIAN 1 /* big endian */
110 #define GSI__LYNX
111 #define GSI__UNIX
112 typedef long INTS8;
113 typedef unsigned long INTU8;
114 typedef unsigned long ADDRS;
115 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
116 #endif
117 
118 #ifdef VMS
119 #define MBS_ENDIAN 0 /* little endian */
120 #define GSI__VMS
121 typedef long INTS8;
122 typedef unsigned long INTU8;
123 typedef unsigned long ADDRS;
124 typedef unsigned long long ADDR64; // JAM for 64 bit status structure receiving
125 #ifdef __alpha
126 #define GSI__VMS_AXP
127 #define AXP
128 #endif
129 #ifdef VAX
130 #define GSI__VMS_VAX
131 #endif
132 #endif
133 
134 #endif
char INTS1
Definition: typedefs.h:24
short INTS2
Definition: typedefs.h:26
float REAL4
Definition: typedefs.h:30
unsigned int INTU4
Definition: typedefs.h:29
double REAL8
Definition: typedefs.h:31
int INTS4
Definition: typedefs.h:28
unsigned char INTU1
Definition: typedefs.h:25
unsigned short INTU2
Definition: typedefs.h:27
char CHARX
Definition: typedefs.h:23
char CHARS
Definition: typedefs.h:21
unsigned char CHARU
Definition: typedefs.h:22