Open CASCADE Technology: Standard_ErrorHandlerCallback Class Reference

Open CASCADE Technology 6.8.0

- Main Page
- Related Pages
- Namespaces
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Protected Member Functions
Standard_ErrorHandlerCallback Class Referenceabstract

Defines a base class for callback objects that can be registered in the OCC error handler (the class simulating C++ exceptions) so as to be correctly destroyed when error handler is activated. More...

`#include <Standard_ErrorHandlerCallback.hxx>`

Inheritance diagram for Standard_ErrorHandlerCallback:
[legend]

## Public Member Functions
void | RegisterCallback ()
| Registers this callback object in the current error handler (if found). More...
void | UnregisterCallback ()
| Unregisters this callback object from the error handler. More...
virtual | ~Standard_ErrorHandlerCallback ()
virtual void | DestroyCallback ()=0
| The callback function to perform necessary callback action. Called by the exception handler when it is being destroyed but still has this callback registered. More...

## Protected Member Functions
| Standard_ErrorHandlerCallback ()
| Empty constructor. More...

## Detailed Description

Defines a base class for callback objects that can be registered in the OCC error handler (the class simulating C++ exceptions) so as to be correctly destroyed when error handler is activated.

Note that this is needed only when Open CASCADE is compiled with NO_CXX_EXCEPTION or OCC_CONVERT_SIGNALS options (i.e. on UNIX/Linux). In that case, raising OCC exception and/or signal will not cause C++ stack unwinding and destruction of objects created in the stack.

This class is intended to protect critical objects and operations in the try {} catch {} block from being bypassed by OCC signal or exception.

Inherit your object from that class, implement DestroyCallback() function, and call Register/Unregister in critical points.

Note that you must ensure that your object has life span longer than that of the try {} block in which it calls Register().

## Constructor & Destructor Documentation

virtual Standard_ErrorHandlerCallback::~Standard_ErrorHandlerCallback | ( |  | ) |
| virtual

Standard_ErrorHandlerCallback::Standard_ErrorHandlerCallback | ( |  | ) |
| protected

Empty constructor.

## Member Function Documentation

virtual void Standard_ErrorHandlerCallback::DestroyCallback | ( |  | ) |
| pure virtual

The callback function to perform necessary callback action. Called by the exception handler when it is being destroyed but still has this callback registered.

void Standard_ErrorHandlerCallback::RegisterCallback | ( |  | ) |

Registers this callback object in the current error handler (if found).

void Standard_ErrorHandlerCallback::UnregisterCallback | ( |  | ) |

Unregisters this callback object from the error handler.

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

- Standard_ErrorHandlerCallback.hxx