| VRS - The Virtual Rendering System |
| version 3.3 |
#include <vrs/container/cachedengineresource.h>

Public Member Functions | |
| CachedEngineResource (Engine *=0, unsigned int frames=10) | |
| virtual | ~CachedEngineResource () |
| virtual void | setEngine (Engine *) |
| Sets a new engine for calling cleanUp-callback. | |
| virtual bool | isCleanUpRegistered () |
| virtual void | cleanUp (SO< EngineGL >) |
| invokes cleanUp of CachedResource. | |
| VRS::CachedEngineResource< KEY, RESOURCE >::CachedEngineResource | ( | Engine * | = 0, |
|
| unsigned int | frames = 10 | |||
| ) |
Convenience CachedResource. If the supplied Engine is an EngineGL, the CachedResource is automatically registered to the cleanup callback of the EngineGL, which is invoked after each frame.
| virtual VRS::CachedEngineResource< KEY, RESOURCE >::~CachedEngineResource | ( | ) | [virtual] |
If appropriate, unregisters the callback before destruction.
| virtual void VRS::CachedEngineResource< KEY, RESOURCE >::setEngine | ( | Engine * | ) | [virtual] |
| virtual bool VRS::CachedEngineResource< KEY, RESOURCE >::isCleanUpRegistered | ( | ) | [virtual] |
Checks whether an EngineGL could be used to call the cleanUp callback. If this returns true, you probably do not need to bother to use setEngine() again.
| virtual void VRS::CachedEngineResource< KEY, RESOURCE >::cleanUp | ( | SO< EngineGL > | ) | [virtual] |
invokes cleanUp of CachedResource.
cleanUp will be typically used as EngineGL-CleanUpCallback (hence the optional, unused argument). This can be implemented as follows:
dictionary = new CachedResource<KEY, RESOURCE>;
SO<MethodCallback1<CachedResource<KEY, RESOURCE>, SO<EngineGL> > > cb =
new MethodCallback1<CachedResource<KEY, RESOURCE>, SO<EngineGL> >
(dictionary, &CachedResource<KEY, RESOURCE>::cleanUp);
engineGL->registerCleanUpCallback(cb);