SoContextHandler Class Reference

| http://www.sim.no/ http://www.coin3d.org/

- Main Page
- Related Pages
- Modules
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Types | Static Public Member Functions | List of all members
SoContextHandler Class Reference
Miscellaneous Classes

The SoContextHandler class is for now to be treated as an internal class. More...

`#include <Inventor/misc/SoContextHandler.h>`

## Public Types
typedef void | ContextDestructionCB(uint32_t contextid, void *userdata)

## Static Public Member Functions
static void | destructingContext (uint32_t contextid)
static void | addContextDestructionCallback (ContextDestructionCB *func, void *closure)
static void | removeContextDestructionCallback (ContextDestructionCB *func, void *closure)

## Detailed Description

The SoContextHandler class is for now to be treated as an internal class.

Since
  Coin 2.0

## Member Function Documentation

void SoContextHandler::destructingContext | ( | uint32_t | contextid | ) |
| static

This method must be called by client code which destructs a context, to guarantee that there are no memory leaks upon context destruction.

This will take care of correctly freeing context-bound resources, like OpenGL texture objects and display lists.

Before calling this function, the context must be made current.

Note that if you are using one of the standard GUI-binding libraries from Kongsberg Oil & Gas Technologies, this is taken care of automatically for contexts for canvases set up by SoQt, SoWin, etc.

void SoContextHandler::addContextDestructionCallback | ( | ContextDestructionCB * | func,
|  | void * | closure
| ) |  |
| static

Add a callback which will be called every time a GL context is destructed. The callback should delete all GL resources tied to that context.

All nodes/classes that allocate GL resources should set up a callback like this. Add the callback in the constructor of the node/class, and remove it in the destructor.

See also
  removeContextDestructionCallback()

void SoContextHandler::removeContextDestructionCallback | ( | ContextDestructionCB * | func,
|  | void * | closure
| ) |  |
| static

Remove a context destruction callback.

See also
  addContextDestructionCallback()

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

- SoContextHandler.h
- SoContextHandler.cpp

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.