Coin Logo http://www.sim.no
http://www.coin3d.org

SoContextHandler Class Reference
[General classes]

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

#include <Inventor/misc/SoContextHandler.h>

List of all members.

Public Member Functions

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 Systems in Motion, this is taken care of automatically for contexts for canvases set up by SoQt, SoWin, etc.

References SbList< Type >::getArrayPtr(), and SbList< Type >::getLength().

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:

Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.

Generated on Mon Feb 23 16:33:46 2009 for Coin by Doxygen. 1.5.8