1 | #ifndef NX_FOUNDATION_NXUSEROUTPUTSTREAM
|
---|
2 | #define NX_FOUNDATION_NXUSEROUTPUTSTREAM
|
---|
3 | /*----------------------------------------------------------------------------*\
|
---|
4 | |
|
---|
5 | | Public Interface to NovodeX Technology
|
---|
6 | |
|
---|
7 | | www.novodex.com
|
---|
8 | |
|
---|
9 | \*----------------------------------------------------------------------------*/
|
---|
10 | /** \addtogroup foundation
|
---|
11 | @{
|
---|
12 | */
|
---|
13 |
|
---|
14 | #include "Nx.h"
|
---|
15 |
|
---|
16 | enum NxAssertResponse
|
---|
17 | {
|
---|
18 | NX_AR_CONTINUE, //!continue execution
|
---|
19 | NX_AR_IGNORE, //!continue and don't report this assert from now on
|
---|
20 | NX_AR_BREAKPOINT //!trigger a breakpoint
|
---|
21 | };
|
---|
22 |
|
---|
23 | /**
|
---|
24 | \brief User defined interface class. Used by the library to emit debug information.
|
---|
25 |
|
---|
26 | <b>Threading:</b> It is not necessary to make this class thread safe as it will only be called in the context of the
|
---|
27 | user thread.
|
---|
28 | */
|
---|
29 | class NxUserOutputStream
|
---|
30 | {
|
---|
31 | public:
|
---|
32 |
|
---|
33 | /**
|
---|
34 | \brief Reports an error code.
|
---|
35 |
|
---|
36 | \param code Error code, see #NxErrorCode
|
---|
37 | \param message Message to display.
|
---|
38 | \param file File error occured in.
|
---|
39 | \param line Line number error occured on.
|
---|
40 | */
|
---|
41 | virtual void reportError(NxErrorCode code, const char * message, const char *file, int line) = 0;
|
---|
42 | /**
|
---|
43 | \brief Reports an assertion violation. The user should return
|
---|
44 |
|
---|
45 | \param message Message to display.
|
---|
46 | \param file File error occured in.
|
---|
47 | \param line Line number error occured on.
|
---|
48 | */
|
---|
49 | virtual NxAssertResponse reportAssertViolation(const char * message, const char *file, int line) = 0;
|
---|
50 | /**
|
---|
51 | \brief Simply prints some debug text
|
---|
52 |
|
---|
53 | \param message Message to display.
|
---|
54 | */
|
---|
55 | virtual void print(const char * message) = 0;
|
---|
56 | };
|
---|
57 |
|
---|
58 | /** @} */
|
---|
59 | #endif
|
---|
60 |
|
---|
61 |
|
---|
62 | //AGCOPYRIGHTBEGIN
|
---|
63 | ///////////////////////////////////////////////////////////////////////////
|
---|
64 | // Copyright © 2005 AGEIA Technologies.
|
---|
65 | // All rights reserved. www.ageia.com
|
---|
66 | ///////////////////////////////////////////////////////////////////////////
|
---|
67 | //AGCOPYRIGHTEND
|
---|
68 |
|
---|