Class Hierarchy   Class Index   Method Index  

CHMdataType.h

00001 #ifndef __CHM_DATA_TYPE__
00002 #define __CHM_DATA_TYPE__
00003 //---------------------------------------------------------------------------
00004 // Module: CHMdataType
00005 //
00006 // Description:
00007 //
00008 // Enumeration of basic data types used throughout HL7 Chameleon
00009 //
00010 // Author: Eliot Muir
00011 //---------------------------------------------------------------------------
00012 
00013 #include <CHM/CHMdataTypeValue.h>
00014 #include <CHM/CHMunicode.h>
00015 
00016 typedef enum CHMdataType
00017 {
00018    CHMstringType   = __CHM_STRING_TYPE,
00019    CHMintegerType  = __CHM_INTEGER_TYPE,
00020    CHMdoubleType   = __CHM_DOUBLE_TYPE,
00021    CHMcompositeType= __CHM_COMPOSITE_TYPE,
00022    CHMdateTimeType = __CHM_DATE_TIME_TYPE, 
00023    CHMenumerationType = __CHM_ENUMERATION_TYPE 
00024 } CHMdataType;
00025 
00026 const CHMchar* CHMoutputDataTypeAsString(const CHMdataType Type);
00027   
00028 #define CHMint8 char
00029 #define CHMint16 short
00030 #define CHMint32 int
00031 #ifdef CHM_UNIX
00032 #   define CHMint64 long long 
00033 #else
00034 #   define CHMint64 __int64
00035 #endif
00036 #define CHMuint8 unsigned CHMint8
00037 #define CHMuint16 unsigned CHMint16
00038 #define CHMuint32 unsigned CHMint32
00039 #define CHMuint64 unsigned CHMint64
00040 
00041 #define CHMfloat32 float
00042 #define CHMfloat64 double
00043 
00044 #endif // end of defensive include