Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members

SoError Class Reference
[Error handling]

The SoError class is the base class for all the error handling classes. More...

#include <Inventor/errors/SoError.h>

Inheritance diagram for SoError:

SoDebugError SoMemoryError SoReadError List of all members.

Public Member Functions

const SbStringgetDebugString (void) const
virtual SoType getTypeId (void) const
SbBool isOfType (const SoType type) const
virtual ~SoError ()

Static Public Member Functions

void setHandlerCallback (SoErrorCB *const func, void *const data)
SoErrorCB * getHandlerCallback (void)
void * getHandlerData (void)
SoType getClassTypeId (void)
void post (const char *const format,...)
SbString getString (const SoNode *const node)
SbString getString (const SoPath *const path)
SbString getString (const SoEngine *const engine)
void initClass (void)
void initClasses (void)

Protected Member Functions

virtual SoErrorCB * getHandler (void *&data) const
void setDebugString (const char *const str)
void appendToDebugString (const char *const str)
void handleError (void)

Static Protected Member Functions

void defaultHandlerCB (const SoError *error, void *userdata)

Detailed Description

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.


Constructor & Destructor Documentation

SoError::~SoError  )  [inline, virtual]
 

The default destructor does nothing.


Member Function Documentation

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.

See also:
defaultHandlerCB()

Reimplemented in SoDebugError, SoMemoryError, and SoReadError.

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.

See also:
getTypeId()

Reimplemented in SoDebugError, SoMemoryError, and SoReadError.

SoType SoError::getTypeId void   )  const [virtual]
 

This method returns the SoType of a particular object instance.

See also:
getClassTypeId()

Reimplemented in SoDebugError, SoMemoryError, and SoReadError.

SbBool SoError::isOfType const SoType  type  )  const
 

This method returns TRUE if the error instance is of - or derived from - type, and FALSE otherwise.

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.

SbString SoError::getString const SoNode *const  node  )  [static]
 

Constructs a string identifying the node with name (if available) and memory pointer.

SbString SoError::getString const SoPath *const  path  )  [static]
 

Constructs a string identifying the path with name (if available) and memory pointer.

SbString SoError::getString const SoEngine *const  engine  )  [static]
 

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.

void SoError::initClasses void   )  [static]
 

This static method initializes all the SoError classes.

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.

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.

void SoError::appendToDebugString const char *const  str  )  [protected]
 

Add str at the end of the currently stored debug string.

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.


The documentation for this class was generated from the following files:
Generated on Tue Jul 27 23:53:04 2004 for Coin by doxygen 1.3.7