18 #define DATA_NO_CAST 0x00000000
19 #define DATA_VALID_CAST 0x00000001
20 #define DATA_BAD_CAST 0x80000000
21 #define DATA_BIT_CUT 0x80000001
22 #define DATA_SIGN_FLIP 0x80000002
23 #define DATA_UNKNOWN 0x80000004
24 #define DATA_INVALID 0x80000008
25 #define DATA_BAD 0x80000000
26 #define DATA_NO_DATA 0xFFFFFFFF
30 #define DATA_TYPE_REAL 0x00010000
31 #define DATA_TYPE_UNSIGNED 0x00001000
32 #define DATA_TYPE_16B 0x00000001
33 #define DATA_TYPE_32B 0x00000002
34 #define DATA_TYPE_64B 0x00000003
39 dataTypeReal = 0x00010000,
40 dataTypeUnsigned = 0x00001000,
41 dataType16b = 0x00000001,
42 dataType32b = 0x00000002,
43 dataType64b = 0x00000003
47 #define DATA_TYPE_UNDEFINED 0
48 #define DATA_TYPE_U_INT2 (DATA_TYPE_UNSIGNED | DATA_TYPE_16B)
49 #define DATA_TYPE_U_INT4 (DATA_TYPE_UNSIGNED | DATA_TYPE_32B)
50 #define DATA_TYPE_U_INT8 (DATA_TYPE_UNSIGNED | DATA_TYPE_64B)
51 #define DATA_TYPE_INT2 (DATA_TYPE_16B)
52 #define DATA_TYPE_INT4 (DATA_TYPE_32B)
53 #define DATA_TYPE_INT8 (DATA_TYPE_64B)
54 #define DATA_TYPE_REAL4 (DATA_TYPE_REAL | DATA_TYPE_32B)
55 #define DATA_TYPE_REAL8 (DATA_TYPE_REAL | DATA_TYPE_64B)
60 dataTypeUndefined = 0,
61 dataTypeUInt2 = (dataTypeUnsigned | dataType16b),
62 dataTypeUInt4 = (dataTypeUnsigned | dataType32b),
63 dataTypeUInt8 = (dataTypeUnsigned | dataType64b),
64 dataTypeInt2 = (dataType16b),
65 dataTypeInt4 = (dataType32b),
66 dataTypeInt8 = (dataType64b),
67 dataTypeReal4 = (dataTypeReal | dataType32b),
68 dataTypeReal8 = (dataTypeReal | dataType64b)
72 #define DATA_TYPE_TXT_UNDEFINED "???"
73 #define DATA_TYPE_TXT_U_INT2 "U*2"
74 #define DATA_TYPE_TXT_U_INT4 "U*4"
75 #define DATA_TYPE_TXT_U_INT8 "U*8"
76 #define DATA_TYPE_TXT_INT2 "I*2"
77 #define DATA_TYPE_TXT_INT4 "I*4"
78 #define DATA_TYPE_TXT_INT8 "I*8"
79 #define DATA_TYPE_TXT_REAL4 "R*4"
80 #define DATA_TYPE_TXT_REAL8 "R*8"
270 virtual u_int
TypeId ( )
const = 0;
275 virtual string Type ( )
const = 0;
279 virtual string String ( )
const = 0;
284 inline virtual string Text ( )
const
286 return (
string(
"(") +
Type() +
") " +
String());
304 template <
class T >
operator T (
void)
const
305 { T result;
GetValue (result);
return (result); }
446 {
return (os << d.
String()); }
const Real8 DATA_UI8_RMAX
valeur mini pour conversion d'un entier
Definition: Data.hh:109
double Real8
Définition du type réel 32 bits.
Definition: EventCommon.hh:68
static Data & Bad()
Definition: Data.cpp:81
int Status() const
Definition: Data.hh:410
ParamDataTypes
Définition des types numériques.
Definition: Data.hh:58
float Real4
Définition du type réel 32 bits.
Definition: EventCommon.hh:62
const Real8 DATA_UI4_RMAX
valeur mini pour conversion d'un entier
Definition: Data.hh:96
static void SetLen(u_int l)
Definition: Data.hh:191
ostream & operator<<(ostream &os, const Data &d)
Definition: Data.hh:445
const Real8 DATA_I4_RMIN
valeur mini pour conversion d'un réel
Definition: Data.hh:97
string CastInfo()
Definition: Data.cpp:49
DataTypeFlags
Bits de définition des types numériques.
Definition: Data.hh:37
Data()
Definition: Data.cpp:25
friend ostream & operator<<(ostream &os, const Data &d)
Definition: Data.hh:445
const U_Int2 DATA_UI2_SIGN
Bit de signe 16 bits.
Definition: Data.hh:90
virtual string Text() const
Definition: Data.hh:284
void SetBad()
Definition: Data.hh:420
virtual u_int TypeId() const =0
const Real8 DATA_I8_RMAX
valeur mini pour conversion d'un réel
Definition: Data.hh:110
static char fill
Caractère de remplissage.
Definition: Data.hh:164
const Int8 DATA_I8_MAX
valeur mini pour conversion d'un entier
Definition: Data.hh:107
unsigned short U_Int2
Définition du type entier 16 bits non signé
Definition: EventCommon.hh:32
const Real8 DATA_UI2_RMAX
valeur mini pour conversion d'un entier
Definition: Data.hh:86
T Value()
Definition: Data.hh:395
virtual string Type() const =0
const U_Int8 DATA_UI8_MAX
valeur maxi pour conversion d'un entier
Definition: Data.hh:106
static void SetFill(const string &str)
Definition: Data.hh:212
short Int2
Définition du type entier 16 bits.
Definition: EventCommon.hh:26
const Int2 DATA_I2_MIN
valeur mini pour conversion d'un entier
Definition: Data.hh:84
const Real8 DATA_I2_RMIN
valeur mini pour conversion d'un réel
Definition: Data.hh:87
static void SetFill(char c)
Definition: Data.hh:206
bool IsValid() const
Definition: Data.hh:415
const U_Int8 DATA_UI8_SIGN
Bit de signe 64 bits.
Definition: Data.hh:113
const U_Int4 DATA_UI4_HI16
Masque binaire 16 bits forts sur 32 bits.
Definition: Data.hh:101
const U_Int4 DATA_UI4_SIGN
Bit de signe 32 bits.
Definition: Data.hh:100
const Int8 DATA_I8_MIN
valeur maxi pour conversion d'un entier
Definition: Data.hh:108
virtual ~Data()
Definition: Data.cpp:40
const Int2 DATA_I2_MAX
valeur maxi pour conversion d'un entier
Definition: Data.hh:85
ULong64_t U_Int8
Définition du type entier 64 bits non signé
Definition: EventCommon.hh:56
virtual int SetValue(const U_Int2 &val)=0
const Int4 DATA_I4_MAX
valeur maxi pour conversion d'un entier
Definition: Data.hh:95
static string undef
Chaîne pour l'écriture de donnée non valide.
Definition: Data.hh:165
const Int4 DATA_I4_MIN
valeur mini pour conversion d'un entier
Definition: Data.hh:94
const Real8 DATA_I8_RMIN
valeur maxi pour conversion d'un réel
Definition: Data.hh:111
const Real8 DATA_I2_RMAX
valeur maxi pour conversion d'un réel
Definition: Data.hh:88
const U_Int4 DATA_UI4_MAX
valeur maxi pour conversion d'un entier
Definition: Data.hh:93
const U_Int8 DATA_UI8_HI16
Masque binaire 16 bits forts sur 32 bits.
Definition: Data.hh:114
const Real8 DATA_I4_RMAX
valeur maxi pour conversion d'un réel
Definition: Data.hh:98
int Int4
Définition du type entier 32 bits.
Definition: EventCommon.hh:38
unsigned int U_Int4
Définition du type entier 32 bits non signé
Definition: EventCommon.hh:44
#define DATA_BAD
Bits d'état d'une donnée: donnée inutilisable.
Definition: Data.hh:25
const U_Int2 DATA_UI2_MAX
valeur maxi pour conversion d'un entier
Definition: Data.hh:83
static u_int prec
Précision d'affichage.
Definition: Data.hh:163
static void SetPrec(u_int p)
Definition: Data.hh:201
static u_int len
Longueur d'affichage.
Definition: Data.hh:162
Long64_t Int8
Définition du type entier 64 bits.
Definition: EventCommon.hh:50
const U_Int8 DATA_UI8_HI24
Masque binaire 24 bits forts sur 32 bits.
Definition: Data.hh:115
virtual int GetValue(U_Int2 &val) const =0
int status
Indicateur de l'état des conversions de types.
Definition: Data.hh:167
virtual string FullText() const
Definition: Data.hh:292
virtual Data & operator=(const Data &d)
Definition: Data.hh:222
virtual string String() const =0