MrSID Decode SDK for Raster Reference Manual  9.5.4.4709
lt_utilStatusData.h
Go to the documentation of this file.
1 /* $Id$ */
2 /* //////////////////////////////////////////////////////////////////////////
3 // //
4 // This code is Copyright (c) 2004 LizardTech, Inc, 1008 Western Avenue, //
5 // Suite 200, Seattle, WA 98104. Unauthorized use or distribution //
6 // prohibited. Access to and use of this code is permitted only under //
7 // license from LizardTech, Inc. Portions of the code are protected by //
8 // US and foreign patents and other filings. All Rights Reserved. //
9 // //
11 /* PUBLIC */
12 
13 #ifndef LT_UTILSTATUSDATA_H
14 #define LT_UTILSTATUSDATA_H
15 
16 // lt_lib_base
17 #include "lt_base.h"
18 
20 
21 class LTFileSpec;
22 
23 
87 {
88 public:
99  static LT_STATUS initialize();
100 
109  static LT_STATUS terminate();
110 
111  // returns true iff initialize() was called, e.g. system is being used
112  static bool isActive();
113 
114  // push data associated with an error onto the error frame stack
115  // do begin(), data..., end()
116  static void pushBegin(LT_STATUS status);
117  static void pushContext(LT_STATUS status, const char *context);
118  static void pushUint32(lt_uint32 value);
119  static void pushInt32(lt_int32 value);
120  static void pushString(const char *value);
121  static void pushDouble(double value);
122  static void pushFileSpec(const LTFileSpec &value);
123  static void pushEnd();
124 
125  // get the top data item off the error frame stack
126  // returns failure if the data itemis not of the specified type
127  static LT_STATUS popBegin(LT_STATUS &status);
128  static LT_STATUS popContext(const char *&context);
129  static LT_STATUS popString(char *&value); // caller takes ownership of string
130  static LT_STATUS popEnd();
131 
132  // remove the current error frame, if any (this is like doing the pop
133  // begin/end sequence, if there is an active frame)
134  static void clear();
135 
136  class ErrorState;
137 };
138 
139 
141 
142 #endif // LT_UTILSTATUSDATA_H
Interface to the error data stack.
#define LT_END_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:85
Include file for all LizardTech sources.
signed int lt_int32
signed 32-bit integer
Definition: lt_types.h:52
lt_uint32 LT_STATUS
An integral status code.
Definition: lt_status.h:39
Represents a file or directory path.
Definition: lt_fileSpec.h:39
#define LT_BEGIN_NAMESPACE(theNameSpace)
compiler does not support namespaces
Definition: lt_define.h:84
unsigned int lt_uint32
unsigned 32-bit integer
Definition: lt_types.h:54

LizardTech