iObjectWatcher Struct Reference
[Crystal Space 3D Engine]
This is a generic object watcher.
More...
#include <iengine/objwatch.h>
Inheritance diagram for iObjectWatcher:

Public Member Functions | |
virtual void | AddListener (iObjectWatcherListener *cb)=0 |
Add a listener to this object watcher. | |
virtual iLight * | GetLastLight () const =0 |
Get the last light. | |
virtual iMeshWrapper * | GetLastMeshWrapper () const =0 |
Get the last mesh. | |
virtual iMovable * | GetLastMovable () const =0 |
Get the last movable. | |
virtual int | GetLastOperation () const =0 |
Get the last operation that occured. | |
virtual iSector * | GetLastSector () const =0 |
Get the last sector. | |
virtual iLight * | GetLight (int idx)=0 |
Get the specified watched light. | |
virtual iMovable * | GetMovable (int idx)=0 |
Get the specified watched movable. | |
virtual iSector * | GetSector (int idx)=0 |
Get the specified watched sector. | |
virtual int | GetWatchedLightCount () const =0 |
Get the number of watched lights. | |
virtual int | GetWatchedMovableCount () const =0 |
Get the number of watched movables. | |
virtual int | GetWatchedSectorCount () const =0 |
Get the number of watched sectors. | |
virtual uint32 | GetWatchNumber () const =0 |
Get the current number for his watcher. | |
virtual void | RemoveLight (iLight *light)=0 |
Remove a light to watch. | |
virtual void | RemoveListener (iObjectWatcherListener *cb)=0 |
Remove a listener. | |
virtual void | RemoveMovable (iMovable *movable)=0 |
Remove a movable to watch. | |
virtual void | RemoveSector (iSector *sector)=0 |
Remove a sector to watch. | |
virtual void | Reset ()=0 |
Reset. Remove all watched objects from this watcher. | |
virtual void | WatchLight (iLight *light)=0 |
Add a light to watch. | |
virtual void | WatchMovable (iMovable *movable)=0 |
Add a movable to watch. | |
virtual void | WatchSector (iSector *sector)=0 |
Add a sector to watch for meshes. |
Detailed Description
This is a generic object watcher.Currently it can watch on light and movable changes. You can query if something has changed by examining the 'number' or else you can register a listener and get notified when one of the objects changes. This object will not keep real references to the objects it is watching but it will clean up the watcher for some object if that object is removed.
Definition at line 101 of file objwatch.h.
Member Function Documentation
|
Add a listener to this object watcher. This will call IncRef() on the listener So make sure you call DecRef() to release your own reference. |
|
Get the last light. Only valid if the last operation (GetLastOperation()) is one of CS_WATCH_LIGHT_.... |
|
Get the last mesh. Only valid if the last operation (GetLastOperation()) is one of CS_WATCH_SECTOR_.... |
|
Get the last movable. Only valid if the last operation (GetLastOperation()) is one of CS_WATCH_MOVABLE_.... |
|
Get the last operation that occured. This will be one of:
|
|
Get the last sector. Only valid if the last operation (GetLastOperation()) is one of CS_WATCH_SECTOR_.... |
|
Get the specified watched light.
|
|
Get the specified watched movable.
|
|
Get the specified watched sector.
|
|
Get the number of watched lights.
|
|
Get the number of watched movables.
|
|
Get the number of watched sectors.
|
|
Get the current number for his watcher. This number will increase as soon as some of the watched objects change. When this happens you can query the last change (only the last change!) by calling GetLastOperation() and/or GetLastLight() or GetLastMovable(). Note that if the operation indicates that something is destroyed then you should no longer use the pointer returned by GetLastLight() or GetLastMovable() as the object will already be gone by then. You can only use the returned pointer to clean up from internal data structures. |
|
Remove a light to watch.
|
|
Remove a listener.
|
|
Remove a movable to watch.
|
|
Remove a sector to watch.
|
|
Reset. Remove all watched objects from this watcher.
|
|
Add a light to watch.
|
|
Add a movable to watch.
|
|
Add a sector to watch for meshes.
|
The documentation for this struct was generated from the following file:
- iengine/objwatch.h
Generated for Crystal Space by doxygen 1.4.6