![]() |
http://www.sim.no http://www.coin3d.org |
The SoError class is the base class for all the error handling classes.The default error handler just prints messages on the standard error output channel, but this can be overridden by client applications. More...
#include <Inventor/errors/SoError.h>
Public Member Functions | |
virtual | ~SoError () |
const SbString & | getDebugString (void) const |
virtual SoType | getTypeId (void) const |
SbBool | isOfType (const SoType type) const |
Static Public Member Functions | |
static void | setHandlerCallback (SoErrorCB *const func, void *const data) |
static SoErrorCB * | getHandlerCallback (void) |
static void * | getHandlerData (void) |
static SoType | getClassTypeId (void) |
static void | post (const char *const format,...) |
static SbString | getString (const SoNode *const node) |
static SbString | getString (const SoPath *const path) |
static SbString | getString (const SoEngine *const engine) |
static void | initClass (void) |
static void | initClasses (void) |
Protected Member Functions | |
virtual SoErrorCBPtr | getHandler (void *&data) const |
void | setDebugString (const char *const str) |
void | appendToDebugString (const char *const str) |
void | handleError (void) |
Static Protected Member Functions | |
static void | defaultHandlerCB (const SoError *error, void *userdata) |
The SoError class is the base class for all the error handling classes.
The default error handler just prints messages on the standard error output channel, but this can be overridden by client applications.
Being able to override the default handler is useful when you want to collect error messages upon e.g. model import for later presentation of the messages to the user in any custom manner (like for instance in a GUI messagebox).
The SoError class is not designed to be particularly useful for "direct use". Within the Coin library it is only used through its subclasses.
SoError::~SoError | ( | ) | [inline, virtual] |
The default destructor does nothing.
void SoError::setHandlerCallback | ( | SoErrorCB *const | function, |
void *const | data | ||
) | [static] |
This method sets the error handler callback for messages posted via this class.
Note that this will not override the error/debug message handler for subclasses, these will have to be overrided by calling the subclass' setHandlerCallback() method.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
References defaultHandlerCB().
SoErrorCB * SoError::getHandlerCallback | ( | void | ) | [static] |
Returns the error handler callback for messages posted via this class.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
void * SoError::getHandlerData | ( | void | ) | [static] |
This method returns the pointer used for passing data back to the callback handler method.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
const SbString & SoError::getDebugString | ( | void | ) | const |
This method returns an SbString containing error info from the given error instance.
SoType SoError::getClassTypeId | ( | void | ) | [static] |
This static method returns the SoType for this class.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
Referenced by SoReadError::initClass(), SoMemoryError::initClass(), and SoDebugError::initClass().
SoType SoError::getTypeId | ( | void | ) | const [virtual] |
This method returns the SoType of a particular object instance.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
Referenced by isOfType().
SbBool SoError::isOfType | ( | const SoType | type | ) | const |
This method returns TRUE
if the error instance is of - or derived from - type, and FALSE
otherwise.
References getTypeId(), and SoType::isDerivedFrom().
void SoError::post | ( | const char *const | format, |
... | |||
) | [static] |
This method posts an error message. The format string and the trailing aguments should follow the printf() standard.
Constructs a string identifying the node with name (if available) and memory pointer.
Constructs a string identifying the path with name (if available) and memory pointer.
Constructs a string identifying the engine with name (if available) and memory pointer.
void SoError::initClass | ( | void | ) | [static] |
This method takes care of initializing all static data for the class.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
References SoType::badType(), SoType::createType(), and defaultHandlerCB().
Referenced by initClasses().
void SoError::initClasses | ( | void | ) | [static] |
This static method initializes all the SoError classes.
References initClass().
Referenced by SoDB::init().
void SoError::defaultHandlerCB | ( | const SoError * | error, |
void * | data | ||
) | [static, protected] |
Contains the default code for handling error strings.
Default treatment of an error message is to print it out on the standard error file handle.
Referenced by SoReadError::initClass(), SoMemoryError::initClass(), initClass(), SoDebugError::initClass(), SoReadError::post(), setHandlerCallback(), and SoDebugError::setHandlerCallback().
SoErrorCB * SoError::getHandler | ( | void *& | data | ) | const [protected, virtual] |
This is just a convenience wrapper around the getHandlerCallback() and getHandlerData() methods.
Reimplemented in SoDebugError, SoMemoryError, and SoReadError.
void SoError::setDebugString | ( | const char *const | str | ) | [protected] |
Replace the latest stored debug string with str.
Referenced by SoReadError::post(), and SoMemoryError::post().
void SoError::appendToDebugString | ( | const char *const | str | ) | [protected] |
Add str at the end of the currently stored debug string.
Referenced by SoReadError::post(), and SoMemoryError::post().
void SoError::handleError | ( | void | ) | [protected] |
This method calls the appropriate handler for an error instance. All error handling goes through this method, and is therefore a good candidate for a debugger breakpoint.
References SoType::badType().
Referenced by SoReadError::post(), and SoMemoryError::post().
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Feb 28 2011 10:12:09 for Coin by Doxygen. 1.7.3