Assimp  v2.0 (November 2010)
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
Assimp::Logger Class Reference

CPP-API: Abstract interface for logger implementations. More...

Inherited by Assimp::DefaultLogger, and Assimp::NullLogger.

List of all members.

Public Types

enum  ErrorSeverity { Debugging = 1, Info = 2, Warn = 4, Err = 8 }
 Description for severity of a log message. More...
enum  LogSeverity { NORMAL, VERBOSE }
 Log severity to describe the granularity of logging. More...

Public Member Functions

virtual bool attachStream (LogStream *pStream, unsigned int severity=Debugging|Err|Warn|Info)=0
 Attach a new log-stream.
void debug (const char *message)
 Writes a debug message.
void debug (const std::string &message)
virtual bool detatchStream (LogStream *pStream, unsigned int severity=Debugging|Err|Warn|Info)=0
 Detach a still attached stream from the logger (or modify the filter flags bits)
void error (const char *message)
 Writes an error message.
void error (const std::string &message)
LogSeverity getLogSeverity () const
 Get the current log severity.
void info (const char *message)
 Writes a info message.
void info (const std::string &message)
void setLogSeverity (LogSeverity log_severity)
 Set a new log severity.
void warn (const char *message)
 Writes a warning message.
void warn (const std::string &message)
virtual ~Logger ()
 Virtual destructor.

Protected Member Functions

 Logger ()
 Default constructor.
 Logger (LogSeverity severity)
 Construction with a given log severity.
virtual void OnDebug (const char *message)=0
 Called as a request to write a specific debug message.
virtual void OnError (const char *message)=0
 Called as a request to write a specific error message.
virtual void OnInfo (const char *message)=0
 Called as a request to write a specific info message.
virtual void OnWarn (const char *essage)=0
 Called as a request to write a specific warn message.

Protected Attributes

LogSeverity m_Severity
 Logger severity.

Detailed Description

CPP-API: Abstract interface for logger implementations.

Assimp provides a default implementation and uses it for almost all logging stuff ('DefaultLogger'). This class defines just basic logging behaviour and is not of interest for you. Instead, take a look at #DefaultLogger.


Member Enumeration Documentation

Description for severity of a log message.

Every LogStream has a bitwise combination of these flags. A LogStream doesn't receive any messages of a specific type if it doesn't specify the corresponding ErrorSeverity flag.

Enumerator:
Debugging 

Debug log message.

Info 

Info log message.

Warn 

Warn log message.

Err 

Error log message.

Log severity to describe the granularity of logging.

Enumerator:
NORMAL 

Normal granularity of logging.

VERBOSE 

Debug infos will be logged, too.


Constructor & Destructor Documentation

Assimp::Logger::~Logger ( ) [inline, virtual]

Virtual destructor.

Assimp::Logger::Logger ( ) [inline, protected]

Default constructor.

Assimp::Logger::Logger ( LogSeverity  severity) [inline, protected]

Construction with a given log severity.


Member Function Documentation

virtual bool Assimp::Logger::attachStream ( LogStream pStream,
unsigned int  severity = Debugging|Err|Warn|Info 
) [pure virtual]

Attach a new log-stream.

The logger takes ownership of the stream and is responsible for its destruction (which is done using ::delete when the logger itself is destroyed). Call detachStream to detach a stream and to gain ownership of it again.

Parameters:
pStreamLog-stream to attach
severityMessage filter, specified which types of log messages are dispatched to the stream. Provide a bitwise combination of the ErrorSeverity flags.
Returns:
true if the stream has been attached, false otherwise.

Implemented in Assimp::DefaultLogger, and Assimp::NullLogger.

void Assimp::Logger::debug ( const char *  message)

Writes a debug message.

Parameters:
messageDebug message
void Assimp::Logger::debug ( const std::string message) [inline]
virtual bool Assimp::Logger::detatchStream ( LogStream pStream,
unsigned int  severity = Debugging|Err|Warn|Info 
) [pure virtual]

Detach a still attached stream from the logger (or modify the filter flags bits)

Parameters:
pStreamLog-stream instance for detaching
severityProvide a bitwise combination of the ErrorSeverity flags. This value is &~ed with the current flags of the stream, if the result is 0 the stream is detached from the Logger and the caller retakes the possession of the stream.
Returns:
true if the stream has been detached, false otherwise.

Implemented in Assimp::DefaultLogger, and Assimp::NullLogger.

void Assimp::Logger::error ( const char *  message)

Writes an error message.

Parameters:
messageError message
void Assimp::Logger::error ( const std::string message) [inline]
Logger::LogSeverity Assimp::Logger::getLogSeverity ( ) const [inline]

Get the current log severity.

void Assimp::Logger::info ( const char *  message)

Writes a info message.

Parameters:
messageInfo message
void Assimp::Logger::info ( const std::string message) [inline]
virtual void Assimp::Logger::OnDebug ( const char *  message) [protected, pure virtual]

Called as a request to write a specific debug message.

Parameters:
messageDebug message. Never longer than MAX_LOG_MESSAGE_LENGTH characters (excluding the '0').
Note:
The message string is only valid until the scope of the function is left.

Implemented in Assimp::NullLogger.

virtual void Assimp::Logger::OnError ( const char *  message) [protected, pure virtual]

Called as a request to write a specific error message.

Parameters:
messageError message. Never longer than MAX_LOG_MESSAGE_LENGTH characters (exluding the '0').
Note:
The message string is only valid until the scope of the function is left.

Implemented in Assimp::NullLogger.

virtual void Assimp::Logger::OnInfo ( const char *  message) [protected, pure virtual]

Called as a request to write a specific info message.

Parameters:
messageInfo message. Never longer than MAX_LOG_MESSAGE_LENGTH characters (ecxluding the '0').
Note:
The message string is only valid until the scope of the function is left.

Implemented in Assimp::NullLogger.

virtual void Assimp::Logger::OnWarn ( const char *  essage) [protected, pure virtual]

Called as a request to write a specific warn message.

Parameters:
messageWarn message. Never longer than MAX_LOG_MESSAGE_LENGTH characters (exluding the '0').
Note:
The message string is only valid until the scope of the function is left.

Implemented in Assimp::NullLogger.

void Assimp::Logger::setLogSeverity ( LogSeverity  log_severity) [inline]

Set a new log severity.

Parameters:
log_severityNew severity for logging
void Assimp::Logger::warn ( const char *  message)

Writes a warning message.

Parameters:
messageWarn message
void Assimp::Logger::warn ( const std::string message) [inline]

Member Data Documentation

Logger severity.


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