VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes
makVrv::DtWeatherAreaObjectManager Class Reference

The DtWeatherAreaObjectManager manages, sets values, and provides signals related to weather area objects (see DtWeatherAreaObject).

The DtWeatherAreaObjectManager is accessed by a singleton. Use addWeatherArea to get a unique id that can be used modify the weather area during the lifetime of the weather area object. Use removeWeatherArea to remove the weather area object when no longer needed.

Signals are provided by this manager for all changes to weather area objects. Each weather area object will trigger the proper signals when modified. A weather area object is a distrubuted object and will trigger the signals on a master and slave.

Inheritance diagram for makVrv::DtWeatherAreaObjectManager:
Inheritance graph
[legend]

Public Member Functions

virtual ~DtWeatherAreaObjectManager ()
 
 DtWeatherAreaObjectManager ()=delete
 
 DtWeatherAreaObjectManager (const DtWeatherAreaObjectManager &)=delete
 
DtWeatherAreaObjectManageroperator= (const DtWeatherAreaObjectManager &)=delete
 
virtual DtWeatherAreaObjectAgent * findWeatherAreaObjectAgent (DtUniqueID id)
 
virtual DtUniqueID addWeatherArea ()
 
virtual void removeWeatherArea (DtUniqueID id)
 
virtual void setWeatherAreaTransform (DtUniqueID id, const DtVector &position, const float orientation)
 
virtual void setWeatherAreaBounds (DtUniqueID id, const DtVector &bounds, const float cornerRadius)
 
virtual void setWeatherAreaPrecipitationIntensity (DtUniqueID id, const float intensity)
 
virtual void setWeatherAreaPrecipitationType (DtUniqueID id, const unsigned int type)
 
virtual void setWeatherAreaGroundRainAccumulation (DtUniqueID id, const float depth)
 
virtual void setWeatherAreaFogColor (DtUniqueID id, const DtVector &color)
 
virtual void setWeatherAreaVisibilityDistance (DtUniqueID id, const float distance)
 
virtual void setWeatherAreaOvercast (DtUniqueID id, const float overcast)
 
virtual void setWeatherAreaLightningEnabled (DtUniqueID id, const bool enabled)
 
virtual void setWeatherAreaWind (DtUniqueID id, const float direction, const float speed)
 
virtual void weatherAreaObjectCloudLayerAdded (DtUniqueID id, DtCloudLayerId layerId, int cloudType)
 
virtual void weatherAreaObjectCloudLayerRemoved (DtUniqueID id, DtCloudLayerId layerId)
 
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 
virtual ~DtVirtualBaseClass ()
 

Static Public Member Functions

static DtWeatherAreaObjectManagerinstance (DtDe &de)
 
static const std::string & theClassName ()
 

Public Attributes

boost::signalslib::signal
< void(DtUniqueID id,
DtWeatherAreaObject *area)> 
signal_weatherAreaObjectAdded
 
boost::signalslib::signal
< void(DtUniqueID id,
DtWeatherAreaObject *area)> 
signal_weatherAreaObjectToBeRemoved
 
boost::signalslib::signal
< void(DtUniqueID id, const
DtVector &position, const
float orientation)> 
signal_weatherAreaObjectTransformChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
DtVector &bounds, const float
cornerRadius)> 
signal_weatherAreaObjectBoundsChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
float intensity)> 
signal_weatherAreaObjectPrecipitationIntensityChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
unsigned int type)> 
signal_weatherAreaObjectPrecipitationTypeChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
float depth)> 
signal_weatherAreaObjectGroundRainAccumulationChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
DtVector &color)> 
signal_weatherAreaObjectFogColorChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
float distance)> 
signal_weatherAreaObjectVisibilityDistanceChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
float overcast)> 
signal_weatherAreaObjectOvercastChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
bool enabled)> 
signal_weatherAreaObjectLightningEnabledChanged
 
boost::signalslib::signal
< void(DtUniqueID id, const
float direction, const float
speed)> 
signal_weatherAreaObjectWindChanged
 
boost::signalslib::signal
< void(DtUniqueID id,
DtCloudLayerId layerId, int
cloudType)> 
signal_weatherAreaObjectCloudLayerAdded
 
boost::signalslib::signal
< void(DtUniqueID id,
DtCloudLayerId layerId)> 
signal_weatherAreaObjectCloudLayerRemoved
 

Protected Types

typedef std::map< DtUniqueID,
DtWeatherAreaObjectAgent * > 
WeatherAreaMap
 

Protected Member Functions

 DtWeatherAreaObjectManager (DtDe &de)
 

Protected Attributes

DtDemyDe
 
WeatherAreaMap myIDToWeatherAreaObjectAgent
 

Member Typedef Documentation

typedef std::map<DtUniqueID, DtWeatherAreaObjectAgent*> makVrv::DtWeatherAreaObjectManager::WeatherAreaMap
protected

Constructor & Destructor Documentation

virtual makVrv::DtWeatherAreaObjectManager::~DtWeatherAreaObjectManager ( )
virtual

DTOR.

makVrv::DtWeatherAreaObjectManager::DtWeatherAreaObjectManager ( )
delete

Default Constructor not implemented – default constructor not allowed.

makVrv::DtWeatherAreaObjectManager::DtWeatherAreaObjectManager ( const DtWeatherAreaObjectManager )
delete

Copy Constructor not implemented – Copy not allowed.

makVrv::DtWeatherAreaObjectManager::DtWeatherAreaObjectManager ( DtDe de)
protected

CTOR (protected)

Member Function Documentation

DtWeatherAreaObjectManager& makVrv::DtWeatherAreaObjectManager::operator= ( const DtWeatherAreaObjectManager )
delete

Assignment Operator not implemented – Copy not allowed.

static DtWeatherAreaObjectManager& makVrv::DtWeatherAreaObjectManager::instance ( DtDe de)
static

Get/create instance of weather area object manager.

static const std::string& makVrv::DtWeatherAreaObjectManager::theClassName ( )
static

Get the name this class is registered by.

virtual DtWeatherAreaObjectAgent* makVrv::DtWeatherAreaObjectManager::findWeatherAreaObjectAgent ( DtUniqueID  id)
virtual

Find a weather area object agent, returns null if none exists.

Parameters
idThe unique ID of the agent to find.
virtual DtUniqueID makVrv::DtWeatherAreaObjectManager::addWeatherArea ( )
virtual

Add a weather area and return its unique id.

virtual void makVrv::DtWeatherAreaObjectManager::removeWeatherArea ( DtUniqueID  id)
virtual

Remove a weather area.

Parameters
idThe unique ID of the weather area.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaTransform ( DtUniqueID  id,
const DtVector &  position,
const float  orientation 
)
virtual

Set a weather area's transform.

Parameters
idThe unique ID of the weather area.
positionThe position of the transform.
orientationThe orientation of the transform.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaBounds ( DtUniqueID  id,
const DtVector &  bounds,
const float  cornerRadius 
)
virtual

Set a weather area's bounds.

Parameters
idThe unique ID of the weather area.
boundsThe (width, length, height) of the bounding box.
cornerRadiusThe corner radius of the bounding box (for a rounded rect).
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaPrecipitationIntensity ( DtUniqueID  id,
const float  intensity 
)
virtual

Set a weather area's precipitation intensity.

Parameters
idThe unique ID of the weather area.
intensityThe precipitation intensity.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaPrecipitationType ( DtUniqueID  id,
const unsigned int  type 
)
virtual

Set a weather area's precipitation type.

Parameters
idThe unique ID of the weather area.
typeThe precipitation type (see DtEnvironmentInterface::PrecipitationType).
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaGroundRainAccumulation ( DtUniqueID  id,
const float  depth 
)
virtual

Set a weather area's ground rain accumulation depth.

Parameters
idThe unique ID of the weather area.
depthThe ground rain accumulation depth.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaFogColor ( DtUniqueID  id,
const DtVector &  color 
)
virtual

Set a weather area's fog color.

Parameters
idThe unique ID of the weather area.
colorThe fog color (r,g,b) (0.0 - 1.0).
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaVisibilityDistance ( DtUniqueID  id,
const float  distance 
)
virtual

Set a weather area's visibility distance.

Parameters
idThe unique ID of the weather area.
distanceThe visibility distance in meters.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaOvercast ( DtUniqueID  id,
const float  overcast 
)
virtual

Set a weather area's overcast lighting value.

Parameters
idThe unique ID of the weather area.
overcastThe amount of overcast (0.0 [clear] - 1.0 [full overcast]).
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaLightningEnabled ( DtUniqueID  id,
const bool  enabled 
)
virtual

Set a weather area's lightning enabled value.

Parameters
idThe unique ID of the weather area.
enabledSet to true if lightning is enabled.
virtual void makVrv::DtWeatherAreaObjectManager::setWeatherAreaWind ( DtUniqueID  id,
const float  direction,
const float  speed 
)
virtual

Set a weather area's wind.

Parameters
idThe unique ID of the weather area.
directionThe wind direction in radians from true north (clockwise).
speedThe wind speed in meters per second.
virtual void makVrv::DtWeatherAreaObjectManager::weatherAreaObjectCloudLayerAdded ( DtUniqueID  id,
DtCloudLayerId  layerId,
int  cloudType 
)
virtual

Called when a cloud layer is added to a weather area.

Parameters
idThe unique ID of the weather area.
layerIdThe cloud layer id.
cloudTypeThe cloud type (see DtCloudTypeMapper).
virtual void makVrv::DtWeatherAreaObjectManager::weatherAreaObjectCloudLayerRemoved ( DtUniqueID  id,
DtCloudLayerId  layerId 
)
virtual

Called when a cloud layer is removed from a weather area.

Parameters
idThe unique ID of the weather area.
layerIdThe cloud layer id.
cloudTypeThe cloud type (see DtCloudTypeMapper).

Member Data Documentation

boost::signalslib::signal<void(DtUniqueID id, DtWeatherAreaObject* area)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectAdded

Signal raised when a weather area is added.

Parameters
idThe unique ID of the weather area.
areaThe the weather area object.
boost::signalslib::signal<void(DtUniqueID id, DtWeatherAreaObject* area)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectToBeRemoved

Signal raised when a weather area is about to be removed.

Parameters
idThe unique ID of the weather area.
areaThe the weather area object.
boost::signalslib::signal<void(DtUniqueID id, const DtVector& position, const float orientation)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectTransformChanged

Signal raised when a weather area transform changes.

Parameters
idThe unique ID of the weather area.
positionThe position of the transform.
orientationThe orientation of the transform.
boost::signalslib::signal<void(DtUniqueID id, const DtVector& bounds, const float cornerRadius)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectBoundsChanged

Signal raised when a weather area bounds changes.

Parameters
idThe unique ID of the weather area.
boundsThe (width, length, height) of the bounding box.
cornerRadiusThe corner radius of the bounding box (for a rounded rect).
boost::signalslib::signal<void(DtUniqueID id, const float intensity)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectPrecipitationIntensityChanged

Signal raised when a weather area precipitation intensity changes.

Parameters
idThe unique ID of the weather area.
intensityThe precipitation intensity.
boost::signalslib::signal<void(DtUniqueID id, const unsigned int type)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectPrecipitationTypeChanged

Signal raised when a weather area precipitation type changes.

Parameters
idThe unique ID of the weather area.
typeThe precipitation type (see DtEnvironmentInterface::PrecipitationType).
boost::signalslib::signal<void(DtUniqueID id, const float depth)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectGroundRainAccumulationChanged

Signal raised when a weather area ground rain accumulation changes.

Parameters
idThe unique ID of the weather area.
depthThe ground rain accumulation depth.
boost::signalslib::signal<void(DtUniqueID id, const DtVector& color)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectFogColorChanged

Signal raised when a weather area fog color changes.

Parameters
idThe unique ID of the weather area.
colorThe fog color (r,g,b) (0.0 - 1.0).
boost::signalslib::signal<void(DtUniqueID id, const float distance)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectVisibilityDistanceChanged

Signal raised when a weather area visibility distance changes.

Parameters
idThe unique ID of the weather area.
distanceThe visibility distance in meters.
boost::signalslib::signal<void(DtUniqueID id, const float overcast)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectOvercastChanged

Signal raised when a weather area overcast changes.

Parameters
overcastThe amount of overcast (0.0 [clear] - 1.0 [full overcast]).
boost::signalslib::signal<void(DtUniqueID id, const bool enabled)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectLightningEnabledChanged

Signal raised when a weather area lightning enabled changes.

Parameters
enabledSet to true when lightning is enabled.
boost::signalslib::signal<void(DtUniqueID id, const float direction, const float speed)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectWindChanged

Signal raised when a weather area wind changes.

Parameters
idThe unique ID of the weather area.
directionThe wind direction in radians from true north (clockwise).
speedThe wind speed in meters per second.
boost::signalslib::signal<void(DtUniqueID id, DtCloudLayerId layerId, int cloudType)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectCloudLayerAdded

Signal raised when a weather area adds a cloud layer.

Parameters
idThe unique ID of the weather area.
layerIdThe cloud layer id.
cloudTypeThe cloud type (see DtCloudTypeMapper).
boost::signalslib::signal<void(DtUniqueID id, DtCloudLayerId layerId)> makVrv::DtWeatherAreaObjectManager::signal_weatherAreaObjectCloudLayerRemoved

Signal raised when a weather area removes a cloud layer.

Parameters
idThe unique ID of the weather area.
layerIdThe cloud layer id.
DtDe& makVrv::DtWeatherAreaObjectManager::myDe
protected
WeatherAreaMap makVrv::DtWeatherAreaObjectManager::myIDToWeatherAreaObjectAgent
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)