-//@{
-/**
- As @b wxLogDebug, trace functions only do something in debug build and
- expand to nothing in the release one. The reason for making
- it a separate function from it is that usually there are a lot of trace
- messages, so it might make sense to separate them from other debug messages.
-
- The trace messages also usually can be separated into different categories and
- the second and third versions of this function only log the message if the
- @e mask which it has is currently enabled in wxLog. This
- allows to selectively trace only some operations and not others by changing
- the value of the trace mask (possible during the run-time).
-
- For the second function (taking a string mask), the message is logged only if
- the mask has been previously enabled by the call to
- wxLog::AddTraceMask or by setting
- @ref overview_envvars "@c WXTRACE environment variable".
- The predefined string trace masks
- used by wxWidgets are:
-
- wxTRACE_MemAlloc: trace memory allocation (new/delete)
- wxTRACE_Messages: trace window messages/X callbacks
- wxTRACE_ResAlloc: trace GDI resource allocation
- wxTRACE_RefCount: trace various ref counting operations
- wxTRACE_OleCalls: trace OLE method calls (Win32 only)
-
- @b Caveats: since both the mask and the format string are strings,
- this might lead to function signature confusion in some cases:
- if you intend to call the format string only version of wxLogTrace,
- then add a %s format string parameter and then supply a second string parameter
- for that %s, the string mask version of wxLogTrace will erroneously get called instead, since you are supplying two string parameters to the function.
- In this case you'll unfortunately have to avoid having two leading
- string parameters, e.g. by adding a bogus integer (with its %d format string).
-
- The third version of the function only logs the message if all the bits
- corresponding to the @e mask are set in the wxLog trace mask which can be
- set by wxLog::SetTraceMask. This version is less
- flexible than the previous one because it doesn't allow defining the user
- trace masks easily - this is why it is deprecated in favour of using string
- trace masks.
-
- wxTraceMemAlloc: trace memory allocation (new/delete)
- wxTraceMessages: trace window messages/X callbacks
- wxTraceResAlloc: trace GDI resource allocation
- wxTraceRefCount: trace various ref counting operations
- wxTraceOleCalls: trace OLE method calls (Win32 only)
-*/
-void wxLogTrace(const char * formatString, ... );
- void wxVLogTrace(const char * formatString, va_list argPtr);
- void wxLogTrace(const char * mask, const char * formatString,
- ... );
- void wxVLogTrace(const char * mask,
- const char * formatString,
- va_list argPtr);
- void wxLogTrace(wxTraceMask mask, const char * formatString,
- ... );
- void wxVLogTrace(wxTraceMask mask, const char * formatString,
- va_list argPtr);