22#if defined(BASE_LIB) | defined(BASE2017_LIB) 
   23#  define BASE_EXPORT EXPORT_TAG 
   25#  define BASE_EXPORT IMPORT_TAG 
   32using char16 = char16_t; 
 
   37using uint16 = uint16_t;
 
   39using uint32 = uint32_t;
 
   41using int64  = 
long long int;
 
   42using uint64 = 
unsigned long long int;
 
   45using uint64 = uint64_t;
 
   49static constexpr int32 linuxOS = 2;
 
   50static constexpr int32 windowsOS = 1;
 
   53#  define _EM_OVERFLOW FE_OVERFLOW 
   54#  define _EM_INVALID FE_INVALID 
   55#  define _EM_UNDERFLOW FE_UNDERFLOW 
   56#  define _EM_ZERODIVIDE FE_DIVBYZERO 
   57  inline unsigned doClearFP() {
 
   58      int ret = fetestexcept(FE_ALL_EXCEPT);
 
   59      feclearexcept(FE_ALL_EXCEPT);
 
   62#  define _clearfp doClearFP 
   64  static constexpr int32 currentOS = linuxOS;
 
   65  template <
typename T,
typename U>
 
   66  constexpr const U &osval(
const T &,
const U &lval) { 
return lval; }
 
   69  static constexpr int32 currentOS = windowsOS;
 
   70  template <
typename T,
typename U>
 
   71  constexpr const T &osval(
const T &wval,
const U &) { 
return wval; }
 
   79#  define CLEAR_FP_STATUS _clearfp() 
   81#    define CHECK_FP_STATUS checkFPStatus(__FILE__,__LINE__) 
   83#    define CHECK_FP_STATUS __noop() 
   86#  define FP_S CHECK_FP_STATUS 
   88#  define FP_C CLEAR_FP_STATUS 
   91BASE_EXPORT unsigned checkFPStatus(
const char *file=0,uint32 line=0);
 
   92BASE_EXPORT std::array<char,1024> reportFPStatus(
const char *file=0,uint32 line=0);
 
   93enum class FloatingPointCheck { Off, Warning, 
Exception };
 
   94BASE_EXPORT FloatingPointCheck floatingPointCheckStatus();
 
   95BASE_EXPORT void floatingPointCheckStatus(FloatingPointCheck fpc);
 
   96static constexpr bool isCurrentOS(
int i) { 
return i==currentOS; }
 
  101static constexpr bool isDebugCompile = 
false;
 
  103static constexpr bool isDebugCompile = 
true;
 
  110#  define filesystem ERROR_USE_SHARED_FILESTORE_INSTEAD 
  115#define FOR(x,y) for (auto x=(y).begin();x!=(y).end();++x) 
Base exception class for all Itasca code.
Definition baseexception.h:10
Defines automatic generation of DLL exports and imports for each system supported.
uint32 TType
class type indicator
Definition basedef.h:47
#define BASE_EXPORT
Definition basedef.h:25