00001
00033 #ifndef INC_SPATMOD_DATATYPE_H
00034 #define INC_SPATMOD_DATATYPE_H
00035
00036 #ifndef INC_MI32_STDDEFNS_H
00037 #include <mi32/stddefns.h>
00038 #endif
00039
00040 namespace SPATMOD {
00041
00044 enum DATATYPE {
00045 DATATYPE_Invalid = 0,
00046 DATATYPE_Unsigned = 0x1000,
00047 DATATYPE_Signed = 0x2000,
00048 DATATYPE_Float = 0x4000,
00049 DATATYPE_UINT8 = (DATATYPE_Unsigned|1),
00050 DATATYPE_UINT16 = (DATATYPE_Unsigned|2),
00051 DATATYPE_UINT32 = (DATATYPE_Unsigned|4),
00052 DATATYPE_UINT64 = (DATATYPE_Unsigned|8),
00053 DATATYPE_SINT8 = (DATATYPE_Signed|1),
00054 DATATYPE_SINT16 = (DATATYPE_Signed|2),
00055 DATATYPE_SINT32 = (DATATYPE_Signed|4),
00056 DATATYPE_SINT64 = (DATATYPE_Signed|8),
00057 DATATYPE_FLOAT32 = (DATATYPE_Float|4),
00058 DATATYPE_FLOAT64 = (DATATYPE_Float|8),
00059 DATATYPE_MASK_Size = 0x00FF,
00060 DATATYPE_MASK_Type = 0x7000
00061 };
00062
00065 enum RANGETYPE {
00066 RANGETYPE_Default,
00067 RANGETYPE_Exact,
00068 RANGETYPE_Maximal,
00069 RANGETYPE_Typical
00070 };
00071
00073 enum STATSVALIDITY {
00074 STATSVALIDITY_None,
00075 STATSVALIDITY_Fastest,
00076 STATSVALIDITY_Approximate,
00077 STATSVALIDITY_Exact
00078 };
00079
00080 #ifndef GENERATING_DOXYGEN_OUTPUT
00081 class GEOREFERENCE;
00082 #endif
00083
00084 namespace SYSTEM {
00085
00087 DATATYPE GetDataTypeCombined (
00088 DATATYPE DataType1,
00089 DATATYPE DataType2,
00090 bool IncludeInt64 = false
00091 );
00092
00094 double GetMaximumValue (
00095 DATATYPE DataType
00096 );
00097
00099 double GetMinimumValue (
00100 DATATYPE DataType
00101 );
00102
00106 DATATYPE GetNextDataType (
00107 DATATYPE DataType,
00108 bool IncludeInt64
00109 );
00110
00111 };
00112
00113 };
00114
00115 #endif // INC_SPATMOD_DATATYPE_H