00001
00002
00003
00004
00005
00006
00007
00008
00009
00011
00012
00013 #ifndef LT_UTILSTATUSDATA_H
00014 #define LT_UTILSTATUSDATA_H
00015
00016
00017 #include "lt_base.h"
00018
00019
00020 #include <stdlib.h>
00021
00022
00023 #if defined(LT_COMPILER_MS)
00024 #pragma warning(push,4)
00025 #endif
00026
00027
00028 LT_BEGIN_NAMESPACE(LizardTech)
00029
00030 class LTFileSpec;
00031
00032
00096 class LTUtilStatusData
00097 {
00098 public:
00109 static LT_STATUS initialize();
00110
00119 static LT_STATUS terminate();
00120
00121
00122 static bool isActive();
00123
00124
00125
00126 static void pushBegin(LT_STATUS);
00127 static void pushUint32(lt_uint32);
00128 static void pushInt32(lt_int32);
00129 static void pushString(const char*);
00130 static void pushDouble(double);
00131 static void pushFileSpec(const LTFileSpec&);
00132 static void pushEnd();
00133
00134
00135
00136 static LT_STATUS popBegin(LT_STATUS&);
00137 static LT_STATUS popUint32(lt_uint32&);
00138 static LT_STATUS popInt32(lt_int32&);
00139 static LT_STATUS popString(char*&);
00140 static LT_STATUS popDouble(double&);
00141 static LT_STATUS popFileSpec(LTFileSpec&);
00142 static LT_STATUS popEnd();
00143
00144
00145
00146
00147
00148 static LT_STATUS popRemainder();
00149
00150
00151
00152 static void clear();
00153 };
00154
00155
00156 LT_END_NAMESPACE(LizardTech)
00157
00158 #if defined(LT_COMPILER_MS)
00159 #pragma warning(pop)
00160 #endif
00161
00162 #endif // LT_UTILSTATUSDATA_H