VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions
makVrv::DtSilverLiningCameraManager Class Reference

Public Member Functions

virtual ~DtSilverLiningCameraManager ()
 DTOR. More...
 
virtual
SilverLining::ThreadCameraStreamData * 
getOrCreateSilverLiningTcsData (const osg::Camera *osgCamera, const SilverLining::Atmosphere *atmosphere)
 Get or create the SL tcs data for this atmosphere, given the osg camera. More...
 
virtual
SilverLining::ThreadCameraStreamData * 
findSilverLiningTcsData (const osg::Camera *osgCamera, const SilverLining::Atmosphere *atmosphere)
 find SL tcs data for this atmosphere, given the osg camera More...
 
virtual void flushInvalidCameras (SilverLining::Atmosphere *atmosphere, const boost::function< void(SilverLining::ThreadCameraStreamData *)> &callback)
 Flush the invalid cameras will delete the tcs data for invalid cameras. More...
 
virtual void deleteAll (SilverLining::Atmosphere *atmosphere)
 delete all. call just before atmosphere is being destroyed More...
 
virtual void deleteCloudLayer (unsigned int layerHandle, SilverLining::Atmosphere *atmosphere)
 delete a single More...
 
virtual void reloadShaders (SilverLining::Atmosphere *atmosphere, const std::vector< unsigned int > &shaderVector)
 reload shaders for all views for this atmosphere More...
 

Public Attributes

friend DtSilverLiningCameraManagerCreator
 only creator can create More...
 

Protected Types

typedef std::pair
< osg::observer_ptr< const
osg::Camera >, const
SilverLining::Atmosphere * > 
MapKey
 
typedef std::map< MapKey,
SilverLining::ThreadCameraStreamData * > 
MapOsgCamerasToTcsDatas
 

Protected Member Functions

 DtSilverLiningCameraManager (DtDe &de)
 CTOR. only creator can create. More...
 

Protected Attributes

DtDemyDe
 
MapOsgCamerasToTcsDatas myMapOsgCamerasToTcsDatas
 
OpenThreads::Mutex myMapMutex
 the map can be accessed from cull or draw of the sky/cloud. More...
 

Static Protected Attributes

static std::atomic< inttheCameraId
 

Private Member Functions

 DtSilverLiningCameraManager ()=delete
 default constructor not implemented More...
 
 DtSilverLiningCameraManager (const DtSilverLiningCameraManager &rhs)=delete
 not allowed More...
 
DtSilverLiningCameraManageroperator= (const DtSilverLiningCameraManager &rhs)=delete
 not allowed More...
 

Member Typedef Documentation

typedef std::pair< osg::observer_ptr<const osg::Camera>, const SilverLining::Atmosphere* > makVrv::DtSilverLiningCameraManager::MapKey
protected
typedef std::map< MapKey, SilverLining::ThreadCameraStreamData*> makVrv::DtSilverLiningCameraManager::MapOsgCamerasToTcsDatas
protected

Constructor & Destructor Documentation

virtual makVrv::DtSilverLiningCameraManager::~DtSilverLiningCameraManager ( )
virtual

DTOR.

makVrv::DtSilverLiningCameraManager::DtSilverLiningCameraManager ( DtDe de)
protected

CTOR. only creator can create.

makVrv::DtSilverLiningCameraManager::DtSilverLiningCameraManager ( )
privatedelete

default constructor not implemented

makVrv::DtSilverLiningCameraManager::DtSilverLiningCameraManager ( const DtSilverLiningCameraManager rhs)
privatedelete

not allowed

Member Function Documentation

DtSilverLiningCameraManager& makVrv::DtSilverLiningCameraManager::operator= ( const DtSilverLiningCameraManager rhs)
privatedelete

not allowed

virtual SilverLining::ThreadCameraStreamData* makVrv::DtSilverLiningCameraManager::getOrCreateSilverLiningTcsData ( const osg::Camera *  osgCamera,
const SilverLining::Atmosphere *  atmosphere 
)
virtual

Get or create the SL tcs data for this atmosphere, given the osg camera.

virtual SilverLining::ThreadCameraStreamData* makVrv::DtSilverLiningCameraManager::findSilverLiningTcsData ( const osg::Camera *  osgCamera,
const SilverLining::Atmosphere *  atmosphere 
)
virtual

find SL tcs data for this atmosphere, given the osg camera

virtual void makVrv::DtSilverLiningCameraManager::flushInvalidCameras ( SilverLining::Atmosphere *  atmosphere,
const boost::function< void(SilverLining::ThreadCameraStreamData *)> &  callback 
)
virtual

Flush the invalid cameras will delete the tcs data for invalid cameras.

virtual void makVrv::DtSilverLiningCameraManager::deleteAll ( SilverLining::Atmosphere *  atmosphere)
virtual

delete all. call just before atmosphere is being destroyed

virtual void makVrv::DtSilverLiningCameraManager::deleteCloudLayer ( unsigned int  layerHandle,
SilverLining::Atmosphere *  atmosphere 
)
virtual

delete a single

virtual void makVrv::DtSilverLiningCameraManager::reloadShaders ( SilverLining::Atmosphere *  atmosphere,
const std::vector< unsigned int > &  shaderVector 
)
virtual

reload shaders for all views for this atmosphere

Member Data Documentation

friend makVrv::DtSilverLiningCameraManager::DtSilverLiningCameraManagerCreator

only creator can create

DtDe& makVrv::DtSilverLiningCameraManager::myDe
protected
MapOsgCamerasToTcsDatas makVrv::DtSilverLiningCameraManager::myMapOsgCamerasToTcsDatas
protected
OpenThreads::Mutex makVrv::DtSilverLiningCameraManager::myMapMutex
protected

the map can be accessed from cull or draw of the sky/cloud.

so we need a mutex

std::atomic<int> makVrv::DtSilverLiningCameraManager::theCameraId
staticprotected

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

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)