trusty (3) SoDebugError.3.gz

Provided by: libcoin80-doc_3.1.4~abc9f50-4ubuntu2_all bug

NAME

       SoDebugError -

       The SoDebugError class is the internal debugging message passing mechanism.

       This class basically serves two purposes:

SYNOPSIS

       #include <Inventor/errors/SoDebugError.h>

       Inherits SoError.

   Public Types
       enum Severity { ERROR, WARNING, INFO }

   Public Member Functions
       virtual SoType getTypeId (void) const
       SoDebugError::Severity getSeverity (void) const

   Static Public Member Functions
       static void setHandlerCallback (SoErrorCB *const function, void *const data)
       static SoErrorCB * getHandlerCallback (void)
       static void * getHandlerData (void)
       static SoType getClassTypeId (void)
       static void post (const char *const source, const char *const format,...)
       static void postWarning (const char *const source, const char *const format,...)
       static void postInfo (const char *const source, const char *const format,...)
       static void initClass (void)

   Protected Member Functions
       virtual SoErrorCBPtr getHandler (void *&data) const

   Additional Inherited Members

Detailed Description

       The SoDebugError class is the internal debugging message passing mechanism.

       This class basically serves two purposes:

       1) It is the message interface through which error and warning conditions are passed to the programmer
       which is using the Coin library API for building applications. These messages are generated when API
       methods are used in an incorrect manner, or if actions on the library has caused it to enter an
       inconsistent state. Coin programmers should then quickly be able to trace down errors in their
       application code.

       For this service to be available, the Coin library must be compiled with debugging information. For
       release builds, most of this 'programmer's safety net' is removed to gain maximum speed and to use
       minimum space (build the smallest possible library).

       2) Coin application programmers can call the SoDebugError methods within their own code as a convenient
       way of debugging application code, replacing the usual cascades of fprintf() calls.

       Coin supports an environment variable to set conditional breakpoints. The COIN_DEBUG_BREAK environment
       variable can be set to any number of functions in the form of a list separated by commas or spaces. The
       functionnames must be given as 'classname::functioname' (ie without return type, parenthesis or argument
       types or names). If a debug message is posted from one of those functions, your program will be stopped
       (using assert(0)).

       This can be useful if you want to get core-dumps or enter a debugger whenever for instance a warning or
       an error is posted from some function (e.g. 'SbVec3f::normalize'). This feature is only enabled in the
       debug version of Coin.

Member Enumeration Documentation

   enum SoDebugError::Severity
       Specifies the available severity levels of the debug messages.

Member Function Documentation

   SoType SoDebugError::getTypeId (void) const [virtual]
       This method returns the SoType of a particular object instance.

       See Also:
           getClassTypeId()

       Reimplemented from SoError.

   SoDebugError::Severity SoDebugError::getSeverity (void) const
       Returns severity level of current message.

       You can use this to filter out debug messages and only let warnings and/or errors pass through to the
       end-user if you have set your own handler callback.

       See Also:
           setHandlerCallback()

   void SoDebugError::post (const char *constsource, const char *constformat, ...) [static]
       This method posts a message with severity level 'ERROR'. source should be the name of the calling
       function.

   void SoDebugError::postWarning (const char *constsource, const char *constformat, ...) [static]
       This method posts a message with severity level 'WARNING'. source should be the name of the calling
       function.

   void SoDebugError::postInfo (const char *constsource, const char *constformat, ...) [static]
       This method posts a message with severity level 'INFO'. source should be the name of the calling
       function.

   SoErrorCB * SoDebugError::getHandler (void *&data) const [protected],  [virtual]
       This is just a convenience wrapper around the getHandlerCallback() and getHandlerData() methods.

       Reimplemented from SoError.

Author

       Generated automatically by Doxygen for Coin from the source code.