![]() |
VR-Forces Developer's Guide
|
A class to manage multiple DtHeightMapManager(s) (one per camera)
In order for heightmaps to be enabled and used, users of this manager should register using addUser(). If there are no active users, then height maps will not be updated. When a user no longer needs height map data, the user should un-register from this manager using removeUser(). See DtTritonDrawable and DtWeatherAreaBlowingSnow for examples of how to register and unregister. Currently, this is a simple reference count.

Public Member Functions | |
| virtual | ~DtHeightMapSuperManager () |
| virtual int | numHeightMapManagers () const |
| virtual osg::View * | getCurrentView (osg::RenderInfo &renderInfo) |
| virtual osg::Camera * | getViewMainCamera (osg::View *view) |
| virtual DtHeightMapManager * | findHeightMapCamera (osg::RenderInfo &renderInfo) |
| virtual const DtUniqueID | addUser (const char *userName) |
| virtual void | removeUser (const DtUniqueID handle) |
Public Member Functions inherited from makVrv::DtVirtualBaseClass | |
| DtVirtualBaseClass () | |
| virtual | ~DtVirtualBaseClass () |
Static Public Member Functions | |
| static DtHeightMapSuperManager & | instance (DtDe &de) |
Protected Member Functions | |
| DtHeightMapSuperManager (DtDe &de) | |
| virtual void | enableHeightMapManagers (bool enable) |
| virtual void | slot_channelCreated (DtChannelManager *channelManager, DtChannel *channel) |
| virtual void | slot_channelToBeDestroyed (DtChannelManager *channelManager, DtChannel *channel) |
| virtual void | notifyOfReleasedObjects () |
Protected Attributes | |
| DtDe & | myDe |
| osg::ref_ptr< osg::Geode > | myHeightMapGeode |
| osg::ref_ptr < makVrv::DtHeightMapDrawable > | myHeightMapDrawable |
| std::map< DtUniqueID, std::string > | myUsersMap |
| DtUniqueID | myNextUserUniqueHandle |
| DtSignalConnectionManager | myConnections |
| DtThreadCameraStreamDataManagerBase * | myTcsDataManager = nullptr |
| DtHeightMapManagerCreator & | myHeightMapManagerCreator |
Private Member Functions | |
| DtHeightMapSuperManager ()=delete | |
| DtHeightMapSuperManager (const DtHeightMapSuperManager &other)=delete | |
| DtHeightMapSuperManager & | operator= (const DtHeightMapSuperManager &other)=delete |
|
virtual |
Destructor.
|
protected |
Constructor.
|
privatedelete |
Default Constructor not implemented.
|
privatedelete |
Copy Constructor not implemented – Copy Not Allowed.
|
privatedelete |
Assignment Operator Not implemented – Assignment Not Allowed.
|
static |
|
virtual |
returns how many height map managers are owned by this supter manager
|
virtual |
Extracts the current view from the given RenderInfo that should be associated with a heightmap.
|
virtual |
returns the main camera associated with the given RenderInfo view
|
virtual |
find the height map manager based on the current camera for this renderInfo
|
virtual |
Adds a user to this manager. While users are active, the manager will generate/process heightmaps for cameras. A handle id > 0 is returned from this method and the user should unregister using removeUser(handle) when no longer needed. param userName - a name used when reporting errors, useful for debugging returns a handle that should be freed with removeUser when no longer needed.
|
virtual |
|
protectedvirtual |
Ensures that all height map managers are enabled/disabled from the scene graph.
|
protectedvirtual |
creates height map camera for the channel (scene camera) just created
|
protectedvirtual |
destroys height map camera for the channel (scene camera) to be deleted
|
protectedvirtual |
Called from slot_channelToBeDestroyed to notify remaining DtHeightMapManagers that objects have been released.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |