5.2.3 Release
For Test and Development only
nvsipl::INvSIPLTrace Class Referenceabstract

Detailed Description

Defines the public interfaces to control the logging/tracing of SIPL.

Definition at line 32 of file NvSIPLTrace.hpp.

Public Types

enum  TraceLevel {
  LevelNone = 0,
 Defines the tracing/logging levels. More...
using TraceFuncPtr = void(*)(const char *, int)

Public Member Functions

virtual void SetHook (TraceFuncPtr traceHook, bool bCallDefaultRenderer)=0
 Sets a callable trace hook. More...
virtual void SetLevel (TraceLevel eLevel)=0
 Sets the log level. More...
virtual void DisableLineInfo (void)=0
 Disable line info (FUNCTION : LINE: ) prefix. More...
virtual ~INvSIPLTrace ()=default
 Default destructor. More...

Static Public Member Functions

static INvSIPLTraceGetInstance (void)
 Gets a handle to INvSIPLTrace instance. More...

Member Typedef Documentation

◆ TraceFuncPtr

using nvsipl::INvSIPLTrace::TraceFuncPtr = void(*)(const char*, int)

Definition at line 46 of file NvSIPLTrace.hpp.

Member Enumeration Documentation

◆ TraceLevel

Defines the tracing/logging levels.


Indicates logging is turned off.


Indicates logging is turned on for errors.


Indicates logging is turned on for critical warnings.


Indicates logging is turned on for information level messages.


Indicates logging is turned on for every print statement.

Definition at line 37 of file NvSIPLTrace.hpp.

Constructor & Destructor Documentation

◆ ~INvSIPLTrace()

virtual nvsipl::INvSIPLTrace::~INvSIPLTrace ( )

Default destructor.

Member Function Documentation

◆ DisableLineInfo()

virtual void nvsipl::INvSIPLTrace::DisableLineInfo ( void  )
pure virtual

Disable line info (FUNCTION : LINE: ) prefix.

Function to disable line information prefix. Each log/trace is prefixed with function name and the line number. Calling this function will disable the prefix.

◆ GetInstance()

static INvSIPLTrace* nvsipl::INvSIPLTrace::GetInstance ( void  )

Gets a handle to INvSIPLTrace instance.

Static function to get a handle to singleton INvSIPLTrace implementation object.

A pointer to INvSIPLTrace.

◆ SetHook()

virtual void nvsipl::INvSIPLTrace::SetHook ( TraceFuncPtr  traceHook,
bool  bCallDefaultRenderer 
pure virtual

Sets a callable trace hook.

Function to set a callable hook to receive the messages from the library.

[in]traceHookstd::function object, which could be a functor, function pointer, or a lambda. The function object should take const @ char* message and number of chars as arguments.
[in]bCallDefaultRendererBoolean flag indicating if the message should be printed to the default renderer (stderr).

◆ SetLevel()

virtual void nvsipl::INvSIPLTrace::SetLevel ( TraceLevel  eLevel)
pure virtual

Sets the log level.

Function to set the level of logging. Each trace statement specifies a trace level for that statement, and all traces with a level greater than or equal to the current application trace level will be rendered at runtime. Traces with a level below the application trace level will be ignored. The application trace level can be changed at any time to render additional or fewer trace statements.

[in]eLevelTrace level TraceLevel.

The documentation for this class was generated from the following file: