00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef FILE_SELDONDATA_SELDONDATA_HXX
00020
00021
00022 #include <blitz/array.h>
00023 using namespace blitz;
00024
00025
00026 #include <Talos.hxx>
00027 using namespace Talos;
00028
00029 #include <string>
00030 #include <sstream>
00031 #include <exception>
00032 #include <stdexcept>
00033
00035 namespace SeldonData
00036 {
00037 }
00038
00039
00041
00043
00044 #ifdef SELDONDATA_DEBUG_LEVEL_4
00045 #ifndef SELDONDATA_DEBUG_LEVEL_3
00046 #define SELDONDATA_DEBUG_LEVEL_3
00047 #endif
00048 #endif
00049
00050 #ifdef SELDONDATA_DEBUG_LEVEL_3
00051 #ifndef SELDONDATA_DEBUG_CHECK_INDICES
00052 #define SELDONDATA_DEBUG_CHECK_INDICES
00053 #endif
00054 #ifndef SELDONDATA_DEBUG_LEVEL_2
00055 #define SELDONDATA_DEBUG_LEVEL_2
00056 #endif
00057 #endif
00058
00059 #ifdef SELDONDATA_DEBUG_LEVEL_2
00060 #ifndef SELDONDATA_DEBUG_CHECK_DIMENSIONS
00061 #define SELDONDATA_DEBUG_CHECK_DIMENSIONS
00062 #endif
00063 #ifndef SELDONDATA_DEBUG_LEVEL_1
00064 #define SELDONDATA_DEBUG_LEVEL_1
00065 #endif
00066 #endif
00067
00068 #ifdef SELDONDATA_DEBUG_LEVEL_1
00069 #ifndef SELDONDATA_DEBUG_CHECK_MEMORY
00070 #define SELDONDATA_DEBUG_CHECK_MEMORY
00071 #endif
00072 #ifndef SELDONDATA_DEBUG_CHECK_IO
00073 #define SELDONDATA_DEBUG_CHECK_IO
00074 #endif
00075 #ifndef SELDONDATA_DEBUG_LEVEL_0
00076 #define SELDONDATA_DEBUG_LEVEL_0
00077 #endif
00078 #endif
00079
00080
00081 #include "Errors.hxx"
00082
00083
00085
00087
00089
00106 #ifdef TRY
00107 #undef TRY
00108 #endif
00109 #define TRY try\
00110 {
00111
00112 #ifdef END
00113 #undef END
00114 #endif
00115 #define END \
00116 }\
00117 catch(SeldonData::Error& Err)\
00118 {\
00119 Err.What();\
00120 return 1;\
00121 }\
00122 catch (std::exception& Err)\
00123 {\
00124 cout << "C++ exception: " << Err.what() << endl;\
00125 return 1;\
00126 }\
00127 catch (std::string& str)\
00128 {\
00129 cout << str << endl;\
00130 return 1;\
00131 }\
00132 catch (const char* str)\
00133 {\
00134 cout << str << endl;\
00135 return 1;\
00136 }\
00137 catch(...)\
00138 {\
00139 cout << "Unknown error..." <<endl;\
00140 return 1;\
00141 }
00142
00143
00144 #include <algorithm>
00145
00146 #include "Function.hxx"
00147 #include "Grid.cxx"
00148 #include "Data.cxx"
00149 #include "Format.cxx"
00150 #include "Functions.cxx"
00151
00152 #define FILE_SELDONDATA_SELDONDATA_HXX
00153 #endif