VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Macros

An implementation of DtAssert, and helper classes. More...

Go to the source code of this file.

Classes

class  DtAssert
 DtAssert (the class) helps implement DtAssert (the MACRO) by storing static member variables. More...
 

Macros

#define __DTFUNC__   "-Unknown Function-"
 Note: FUNCTION macro is not defined in Microsoft VC++ 6.0. More...
 
#define DtAssert(a)
 DtAssert is a more flexible version of std::assert. More...
 

Detailed Description

An implementation of DtAssert, and helper classes.

Macro Definition Documentation

#define __DTFUNC__   "-Unknown Function-"

Note: FUNCTION macro is not defined in Microsoft VC++ 6.0.

#define DtAssert (   a)
Value:
DtAssert::theAssertFunction(__FILE__,__DTFUNC__, __LINE__, #a) : ((void)0 ) )
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 __DTFUNC__
Note: FUNCTION macro is not defined in Microsoft VC++ 6.0.
Definition: vlAssert.h:86
static DtAssertFunc theAssertFunction
The function to call when a DtAssert fails.
Definition: vlAssert.h:39

DtAssert is a more flexible version of std::assert.

The macro version of DtAssert should be used by anyone wishing a better version of std::assert. DtAssert can be turned on and off in production code. This has the same name as DtAssert (the class) which is OK as long as the macro definition appears after the class and has a different CTOR signature.

It is not safe to use DtAssert in global objects initialized before main() is called as some static variables used by DtAssert may not be initialized. If you want to use this in a safe way you can set DtAssert::theAssertFunction first, via DtAssert::warn(), DtAssert::fatal() or DtAssert::ignore()


Document ID: Generated on Tue Aug 10 00:12:31 EDT 2021 from SVN revision 232765
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)