Provided by: inventor-doc_2.1.5-10-18_all bug

NAME

       SoError — error handling base class

INHERITS FROM

       SoError

SYNOPSIS

       #include <Inventor/errors/SoError.h>

     typedef void        SoErrorCB(const SoError *error, void *data)

          Methods from class SoError:

     static void         setHandlerCallback(SoErrorCB *cb, void *data)
     static SoErrorCB *  getHandlerCallback()
     static void *       getHandlerData()
     const SbString &    getDebugString() const
     static SoType       getClassTypeId()
     virtual SoType      getTypeId() const
     SbBool              isOfType(SoType type) const

DESCRIPTION

       SoError  is  the  base  class  for  all  error  classes,  which provide error handling for
       applications. There are two facets to errors: posting and handling.  An  error  is  posted
       when  some bad condition occurs. Posting is done primarily by the Inventor library itself,
       but extenders can post their own errors. Posting an  error  creates  an  instance  of  the
       appropriate  error class (or subclass) and then passes it to the active error handler. The
       default handler just prints an appropriate message to stderr.  Applications  can  override
       this behavior by supplying a different handler (by specifying a callback function).

       Each  subclass  of SoError supports the setHandlerCallback() method,  which is used to set
       the callback function to handle errors. The callback function for a specfic error class is
       always  used  in  preference  to  that of any base classes when handling errors. The error
       instance passed to a callback is deleted immediately after  the  callback  is  called;  an
       application that wishes to save information from the instance has to copy it out first.

       Each  error class contains a run-time class type id (SoType) that can be used to determine
       the type of an instance. The base class defines  a  character  string  that  represents  a
       detailed  error message that is printed by the default handler. All handlers are called by
       the SoError::handleError() method. When debugging, you can set a breakpoint on this method
       to stop right before an error is handled.

METHODS

     static void         setHandlerCallback(SoErrorCB *cb, void *data)
     static SoErrorCB *  getHandlerCallback()
     static void *       getHandlerData()
          Sets/returns handler callback for SoError class.

     const SbString &    getDebugString() const
          Returns debug string containing full error information from instance.

     static SoType       getClassTypeId()
          Returns type identifier for SoError class.

     virtual SoType      getTypeId() const
          Returns type identifier for error instance.

     SbBool              isOfType(SoType type) const
          Returns TRUE if instance is of given type or is derived from it.

SEE ALSO

       SoDebugError, SoMemoryError, SoReadError

                                                                                   SoError(3IV)()