Explosion::LSCallback Class Reference

#include <Explosion.h>

Inheritance diagram for Explosion::LSCallback:

Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual bool onSourceTaken (LightSourceManager *pLightSourceManager, osg::Referenced *pUserObject, UINT lightNumber)
 LightSourceManager calls this method just before the owned light is to be given to another user.
virtual bool onSourceAvailable (LightSourceManager *pLightSourceManager, osg::Referenced *pUserObject, UINT lightNumber)
 LightSourceManager calls this method when a light source is available.
virtual void onUserDropped (LightSourceManager *pLightSourceManager, osg::Referenced *pUserObject)
 LightSourceManager calls this method when a user is completely dropped (user explicitly removed or manager cleared).


Detailed Description

Definition at line 134 of file Explosion.h.


Member Function Documentation

bool Explosion::LSCallback::onSourceAvailable ( LightSourceManager pLightSourceManager,
osg::Referenced *  pUserObject,
UINT  lightNumber 
) [virtual]

LightSourceManager calls this method when a light source is available.

Returns:
The callback must tell the LightSourceManager if the user object effectively uses the new light source (return true) or not. If yes, the user objects becomes a normal user object; else it is thrown away.

Implements LightSourceUserCallback.

Definition at line 342 of file Explosion.cpp.

References Util::Callback< LightSourceUserCallback >::_nestedCallback, and Explosion::createLight().

bool Explosion::LSCallback::onSourceTaken ( LightSourceManager pLightSourceManager,
osg::Referenced *  pUserObject,
UINT  lightNumber 
) [virtual]

LightSourceManager calls this method just before the owned light is to be given to another user.

Source users may then do some cleanup, and should not try to modify the light or light-affected nodes after this call.

Returns:
The callback must tell the LightSourceManager if the user object wants to be re-enqueued (return true) or not. If yes, the user objects becomes an enqueud user object; else it is thrown away.

Reimplemented from LightSourceUserCallback.

Definition at line 329 of file Explosion.cpp.

References Util::Callback< LightSourceUserCallback >::_nestedCallback, ASSERT, Explosion::pLight, and ExplosionParams::pLightStateSet.

void Explosion::LSCallback::onUserDropped ( LightSourceManager pLightSourceManager,
osg::Referenced *  pUserObject 
) [virtual]

LightSourceManager calls this method when a user is completely dropped (user explicitly removed or manager cleared).

It is guaranteed that onSourceTaken() is called before if needed.

Implements LightSourceUserCallback.

Definition at line 350 of file Explosion.cpp.

References ExplosionParams::pLSM.


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

Generated on Sun Jan 17 11:39:27 2010 for PVLE (Pro-Vocation Light Engine) by  doxygen 1.5.9