FRIBParallelanalysis
1.0
FrameworkforMPIParalleldataanalysisatFRIB
libtclplus
include
libtclplusdatatypes.h
1
/*
2
This software is Copyright by the Board of Trustees of Michigan
3
State University (c) Copyright 2005.
4
5
You may use this software under the terms of the GNU public license
6
(GPL). The terms of this license are described at:
7
8
http://www.gnu.org/licenses/gpl.txt
9
10
Author:
11
Ron Fox
12
NSCL
13
Michigan State University
14
East Lansing, MI 48824-1321
15
*/
16
17
18
/*
19
**++
20
** FACILITY:
21
**
22
** Data types
23
**
24
** ABSTRACT:
25
**
26
** Data types for the host processor.
27
**
28
** AUTHORS:
29
**
30
** Ron Fox
31
**
32
**
33
** CREATION DATE: 7-Oct-1987
34
**
35
** MODIFICATION HISTORY:
36
**--
37
**/
38
39
#ifndef TCLPLUSTYPES_H
40
#define TCLPLUSTYPES_H
41
42
43
#include <sys/types.h>
44
45
#if __cplusplus
46
#if __cplusplus > 199711L // i.e. C++98
47
// stdint.h is deprecated as of C++11 in favor of <cstdint>
48
// The difference is that the types are brought into the std namespace.
49
// We can mimic the old behavior by including cstdint and then bringing
50
// them into the global scope with the using operator. This is a kludge
51
// but is the best solution for the moment.
52
53
#include <cstdint>
54
using
std::int8_t;
55
using
std::uint8_t;
56
using
std::int16_t;
57
using
std::uint16_t;
58
using
std::int32_t;
59
using
std::uint32_t;
60
using
std::int64_t;
61
using
std::uint64_t;
62
#else
63
// When compiled with a C++ compiler that is not C++11 compatible
64
// cstdint does not exist. Furthermore, stdint.h only includes the
65
// limit macros if __STDC_LIMIT_MACROS variables is defined.
66
#define __STDC_LIMIT_MACROS
67
#include <stdint.h>
68
#endif
/* __cplusplus */
69
#else
70
// macros are part of the c standard
71
# include <stdint.h>
72
#endif
/* C++ or C */
73
74
75
namespace
TCLPLUS
{
76
77
typedef
int
Int_t;
78
typedef
unsigned
int
UInt_t;
79
80
typedef
short
Short_t;
81
typedef
unsigned
short
UShort_t;
82
83
typedef
long
Long_t;
84
typedef
unsigned
long
ULong_t;
85
86
typedef
float
Float_t;
87
typedef
double
DFloat_t;
88
89
90
91
typedef
char
Char_t;
92
typedef
unsigned
char
UChar_t;
93
94
typedef
char (*Textsz_t);
// Null terminated string.
95
typedef
UInt_t Size_t;
96
97
typedef
void (*Address_t);
// Typical pointer.
98
99
static
const
Address_t kpNULL = (Address_t)0;
// Null pointer.
100
101
102
typedef
UChar_t Bool_t;
103
static
const
Bool_t kfTRUE = 0xff;
// TRUE boolean.
104
static
const
Bool_t kfFALSE= 0;
// FALSE boolean.
105
106
}
107
108
#define __DAQTYPES_H
109
#endif
TCLPLUS
Definition:
libtclplusdatatypes.h:75
Generated by
1.8.13