Murl::Debug Functions

Assert, Trace and Error functions and macros. More...

Collaboration diagram for Murl::Debug Functions:

Macros

#define MURL_ASSERT(x)
 Assert a condition. More...
 
#define MURL_VERIFY(x)
 Verify a condition. More...
 
#define MURL_ERROR(...)
 Write an error message with the current function name plus line number and a variable number of arguments. More...
 
#define MURL_TRACE_TIME_BEGIN(key)
 Begin a time measurement for trace output. More...
 
#define MURL_TRACE_TIME_END(key, level, message)
 End a time measurement and write a trace message with the current function name plus line number. More...
 
#define MURL_ERROR_TIME_BEGIN(key)
 Begin a time measurement for error output. More...
 
#define MURL_ERROR_TIME_END(key, message)
 End a time measurement and write an error message with the current function name plus line number. More...
 
#define MURL_TRACE(level, ...)
 Write a trace message with the current function name plus line number and a variable number of arguments. More...
 
#define MURL_TRACE_CODE(x)
 Implement a code line for trace usage. More...
 

Functions

void Murl::Debug::Error (const Char *message)
 Write an error message string. More...
 
template<class Type1 >
void Murl::Debug::Error (const Char *format, const Type1 v1)
 Write an error with format string and 1 argument. More...
 
template<class Type1 , class Type2 >
void Murl::Debug::Error (const Char *format, const Type1 v1, const Type2 v2)
 Write an error with format string and 2 arguments. More...
 
template<class Type1 , class Type2 , class Type3 >
void Murl::Debug::Error (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3)
 Write an error with format string and 3 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 >
void Murl::Debug::Error (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4)
 Write an error with format string and 4 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 >
void Murl::Debug::Error (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4, const Type5 v5)
 Write an error with format string and 5 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 , class Type6 >
void Murl::Debug::Error (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4, const Type5 v5, const Type6 v6)
 Write an error with format string and 6 arguments. More...
 
void Murl::Debug::Trace (const Char *message)
 Write a trace message string. More...
 
template<class Type1 >
void Murl::Debug::Trace (const Char *format, const Type1 v1)
 Write a trace with format string and 1 argument. More...
 
template<class Type1 , class Type2 >
void Murl::Debug::Trace (const Char *format, const Type1 v1, const Type2 v2)
 Write a trace with format string and 2 arguments. More...
 
template<class Type1 , class Type2 , class Type3 >
void Murl::Debug::Trace (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3)
 Write a trace with format string and 3 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 >
void Murl::Debug::Trace (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4)
 Write a trace with format string and 4 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 >
void Murl::Debug::Trace (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4, const Type5 v5)
 Write a trace with format string and 5 arguments. More...
 
template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 , class Type6 >
void Murl::Debug::Trace (const Char *format, const Type1 v1, const Type2 v2, const Type3 v3, const Type4 v4, const Type5 v5, const Type6 v6)
 Write a trace with format string and 6 arguments. More...
 

Detailed Description

Assert, Trace and Error functions and macros.

Macro Definition Documentation

◆ MURL_ASSERT

◆ MURL_VERIFY

◆ MURL_ERROR

#define MURL_ERROR (   ...)

Write an error message with the current function name plus line number and a variable number of arguments.

The details of the function name can be configured by the Murl::IAppConfiguration::SetDebugOutputFunctionVerbosity() method.
The error is written with the Murl::Debug::Logger::PrintErrorVA() method.

Parameters
...The message format string and a variable number of arguments.

Referenced by Murl::Logic::GraphObservableNode< Murl::Graph::INamespace >::CreateTypedNode(), Murl::Logic::GraphObservableNode< Murl::Graph::INamespace >::FindNode(), Murl::Logic::GraphObservableNode< Murl::Graph::INamespace >::TrackReference(), and Murl::Logic::GraphInstanceObjects< InstanceObjectType >::~GraphInstanceObjects().

◆ MURL_TRACE_TIME_BEGIN

#define MURL_TRACE_TIME_BEGIN (   key)

Begin a time measurement for trace output.

The trace macros are empty in release build.

Parameters
keyA unique key to differentiate multiple measurement statements within the current scope.

◆ MURL_TRACE_TIME_END

#define MURL_TRACE_TIME_END (   key,
  level,
  message 
)

End a time measurement and write a trace message with the current function name plus line number.

The trace level can be configured by the Murl::IAppConfiguration::SetDebugTraceLevel() method.
The details of the function name can be configured by the Murl::IAppConfiguration::SetDebugOutputFunctionVerbosity() method.
The trace is written with the Murl::Debug::Logger::PrintDebugVA() method in debug build only, the trace macros are empty in release build.

Parameters
keyThe unique key used in MURL_TRACE_TIME_BEGIN().
levelThe trace level.
messageThe message string in front of the time.

◆ MURL_ERROR_TIME_BEGIN

#define MURL_ERROR_TIME_BEGIN (   key)

Begin a time measurement for error output.

Parameters
keyA unique key to differentiate multiple measurement statements within the current scope.

◆ MURL_ERROR_TIME_END

#define MURL_ERROR_TIME_END (   key,
  message 
)

End a time measurement and write an error message with the current function name plus line number.

The details of the function name can be configured by the Murl::IAppConfiguration::SetDebugOutputFunctionVerbosity() method.
The error is written with the Murl::Debug::Logger::PrintErrorVA() method.

Parameters
keyThe unique key used in MURL_ERROR_TIME_BEGIN().
messageThe message string in front of the time.

◆ MURL_TRACE

#define MURL_TRACE (   level,
  ... 
)

Write a trace message with the current function name plus line number and a variable number of arguments.

The trace level can be configured by the Murl::IAppConfiguration::SetDebugTraceLevel() method.
The details of the function name can be configured by the Murl::IAppConfiguration::SetDebugOutputFunctionVerbosity() method.
The trace is written with the Murl::Debug::Logger::PrintDebugVA() method in debug build only, the trace macros are empty in release build.

Parameters
levelThe trace level
...The message format string and a variable number of arguments.

Referenced by Murl::ConstData::GetByteSize32(), and Murl::Pool< FrameBufferItem >::~Pool().

◆ MURL_TRACE_CODE

#define MURL_TRACE_CODE (   x)

Implement a code line for trace usage.

The code is implemented in debug build only, the trace macros are empty in release build.

Parameters
xThe code line to implement.

Function Documentation

◆ Error() [1/7]

void Murl::Debug::Error ( const Char message)
inline

Write an error message string.

The error is written with the Logger::PrintError() method.

Parameters
messageThe message string to write.

References Murl::Debug::Logger::PrintError().

Referenced by Murl::Util::MessageMethod< MessageClass, ObjectClass >::Execute().

◆ Error() [2/7]

template<class Type1 >
void Murl::Debug::Error ( const Char format,
const Type1  v1 
)
inline

Write an error with format string and 1 argument.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1The argument for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Error() [3/7]

template<class Type1 , class Type2 >
void Murl::Debug::Error ( const Char format,
const Type1  v1,
const Type2  v2 
)
inline

Write an error with format string and 2 arguments.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1,v2The arguments for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Error() [4/7]

template<class Type1 , class Type2 , class Type3 >
void Murl::Debug::Error ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3 
)
inline

Write an error with format string and 3 arguments.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1,v2,v3The arguments for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Error() [5/7]

template<class Type1 , class Type2 , class Type3 , class Type4 >
void Murl::Debug::Error ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4 
)
inline

Write an error with format string and 4 arguments.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1,v2,v3,v4The arguments for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Error() [6/7]

template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 >
void Murl::Debug::Error ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4,
const Type5  v5 
)
inline

Write an error with format string and 5 arguments.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1,v2,v3,v4,v5The arguments for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Error() [7/7]

template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 , class Type6 >
void Murl::Debug::Error ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4,
const Type5  v5,
const Type6  v6 
)
inline

Write an error with format string and 6 arguments.

The error is written with the Logger::PrintError() method.

Parameters
formatThe format string to write.
v1,v2,v3,v4,v5,v6The arguments for the fromat string.

References Murl::Debug::Logger::PrintError(), and Murl::Util::PrintToString().

◆ Trace() [1/7]

void Murl::Debug::Trace ( const Char message)
inline

Write a trace message string.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
messageThe message string to write.

References Murl::Debug::Logger::PrintDebug().

◆ Trace() [2/7]

template<class Type1 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1 
)
inline

Write a trace with format string and 1 argument.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1The argument for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().

◆ Trace() [3/7]

template<class Type1 , class Type2 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1,
const Type2  v2 
)
inline

Write a trace with format string and 2 arguments.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1,v2The arguments for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().

◆ Trace() [4/7]

template<class Type1 , class Type2 , class Type3 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3 
)
inline

Write a trace with format string and 3 arguments.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1,v2,v3The arguments for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().

◆ Trace() [5/7]

template<class Type1 , class Type2 , class Type3 , class Type4 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4 
)
inline

Write a trace with format string and 4 arguments.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1,v2,v3,v4The arguments for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().

◆ Trace() [6/7]

template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4,
const Type5  v5 
)
inline

Write a trace with format string and 5 arguments.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1,v2,v3,v4,v5The arguments for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().

◆ Trace() [7/7]

template<class Type1 , class Type2 , class Type3 , class Type4 , class Type5 , class Type6 >
void Murl::Debug::Trace ( const Char format,
const Type1  v1,
const Type2  v2,
const Type3  v3,
const Type4  v4,
const Type5  v5,
const Type6  v6 
)
inline

Write a trace with format string and 6 arguments.

The trace is written with the Logger::PrintDebug() method in debug build only, the trace functions are empty in release build.

Parameters
formatThe format string to write.
v1,v2,v3,v4,v5,v6The arguments for the fromat string.

References Murl::Debug::Logger::PrintDebug(), and Murl::Util::PrintToString().


Copyright © 2011-2018 Spraylight GmbH.