12 #ifdef DtUSE_UTILITIES_NAMESPACE
13 namespace DtUSE_UTILITIES_NAMESPACE
32 typedef void (*DtAssertFunc)
33 (
const char* fName,
const char *func,
int fLine,
const char*operation);
48 static DtAssertFunc getAssertFunction();
49 static void setAssertFunction(DtAssertFunc func);
64 static void defaultFatal(
const char* file,
const char *func,
int line,
const char *operation);
65 static void defaultNonFatal(
const char* file,
const char *func,
int line,
const char *operation);
82 #define __DTFUNC__ __PRETTY_FUNCTION__
83 #elif defined(_WIN32) && (_MSC_VER != 1200)
84 #define __DTFUNC__ __FUNCTION__
86 #define __DTFUNC__ "-Unknown Function-"
100 #define DtAssert(a) \
101 ((DtAssert::theAssertFunction != DtAssert::theNoAssertFunction && !(a)) ? \
102 DtAssert::theAssertFunction(__FILE__,__DTFUNC__, __LINE__, #a) : ((void)0 ) )
105 #ifdef DtUSE_UTILITIES_NAMESPACE
This file declares vlException.
static const DtAssertFunc theNoAssertFunction
always set to null, when theAssertFunction is set to this value then DtAssert is a no-op ...
Definition: vlAssert.h:46
#define DtAssert(a)
DtAssert is a more flexible version of std::assert.
Definition: vlAssert.h:100
Functions in vlPrint.h provide an error and print facility for vrlink.
DtAssert (the class) helps implement DtAssert (the MACRO) by storing static member variables...
Definition: vlAssert.h:28
DtOutputStream is used for all toolkit output.
Definition: vlPrint.h:282
static DtAssertFunc theAssertFunction
The function to call when a DtAssert fails.
Definition: vlAssert.h:39
#define DT_DLL_VLUTIL
Definition: vlMachineTypes.h:109
static DtOutputStream & theAssertStream
the DtOutputStream to use for DtAssert() warnings
Definition: vlAssert.h:42