27 class DtCloudLayerRecord;
28 class DtEnvironmentListRecord;
34 class DtAgentManagerInterface;
35 class DtSkyObjectAgent;
36 class DtDynamicOceanObjectAgent;
37 class DtEventQueueInterface;
38 class DtSharedSettingsManager;
41 class DtOceanStateInterface;
42 class DtWeatherEffectsObjectAgent;
68 virtual void setFromRecord(
81 virtual void saveEnvironment(
const std::string& name);
85 virtual void setEnvironment(
const std::string& name);
89 virtual void removeEnvironment(
const std::string& name);
92 virtual void renameEnvironment(
93 const std::string& oldName,
const std::string& newName);
99 virtual void getEnvironmentNames(std::vector<std::string>& names,
100 bool includeLocalOnlyEnvironment =
false);
104 virtual void setDefaultEnvironmentName(
const std::string& name);
108 virtual std::string defaultEnvironmentName()
const;
112 virtual void setLightningPresent(
bool lightningPresent);
114 virtual bool lightningPresent()
const;
118 virtual void setAirTurbidity(
float turbidity);
120 virtual float airTurbidity()
const;
124 virtual void setVisibleDistance(
float distance);
129 virtual float visibleDistance()
const;
133 virtual void setWindSpeed(
float windSpeed);
138 virtual float windSpeed()
const;
142 virtual void setWindDirection(
float direction);
147 virtual float windDirection()
const;
157 virtual void setPrecipitationIntensity(
float intensity);
159 virtual float precipitationIntensity()
const;
172 virtual void updateOrAddElevationalConfiguration(
182 virtual bool getElevationalConfiguration(
float baseMSLAltitude,
192 virtual void removeElevationalConfiguration(
float baseMSLAltitude);
204 virtual void moveElevationalConfiguration(
205 float oldBaseMSLAltitude,
float newBaseMSLAltitude);
211 virtual void setWindSpeedAtMSLAltitude(
float mslAltitude,
float windSpeed);
218 virtual float windSpeedAtMSLAltitude(
float mslAltitude)
const;
225 virtual void setWindDirectionAtMSLAltitude(
float mslAltitude,
float windDirection);
232 virtual float windDirectionAtMSLAltitude(
float mslAltitude)
const;
239 virtual void setVisibilityDistanceAtMSLAltitude(
float mslAltitude,
float visibilityDistance);
246 virtual float visibilityDistanceAtMSLAltitude(
float mslAltitude)
const;
267 virtual void setCloudTypeAtMSLAltitude(
float mslAltitude,
CloudType cloudType);
274 virtual CloudType cloudTypeAtMSLAltitude(
float mslAltitude)
const;
280 virtual void setSkyCoverageAtMSLAltitude(
float mslAltitude,
float skyCoverage);
286 virtual float skyCoverageAtMSLAltitude(
float mslAltitude)
const;
289 virtual void setAmbientAirTemperature(
float temperature);
291 virtual float ambientAirTemperature()
const;
295 virtual void setAmbientAirPressure(
float pressure);
297 virtual float ambientAirPressure()
const;
302 virtual void setAirPressureAltitude(
float altitude);
303 virtual float airPressureAltitude()
const;
308 virtual void setAirTemperatureAltitude(
float altitude);
309 virtual float airTemperatureAltitude()
const;
314 virtual void setAirPressureAltitudeIsSeaLevel(
bool seaLevel);
315 virtual bool airPressureAltitudeIsSeaLevel()
const;
320 virtual void setAirTemperatureAltitudeIsSeaLevel(
bool seaLevel);
321 virtual bool airTemperatureAltitudeIsSeaLevel()
const;
326 virtual void setSeaLevelWaterConcentration(
float water);
327 virtual float seaLevelWaterConcentration()
const;
331 virtual void setFogHeight(
float height);
333 virtual float fogHeight()
const;
337 virtual void setFogColor(
const DtVector& color);
343 virtual void setGroundFogColor(
const DtVector& color)
override;
345 virtual DtVector groundFogColor()
const override;
356 virtual void setSeaStateDirection(
float dir);
358 virtual float seaStateDirection()
const;
362 virtual void setWindDrivenSeaState(
bool enabled);
364 virtual bool windDrivenSeaState()
const;
375 virtual void setSwellStateDirection(
float dir);
377 virtual float swellStateDirection()
const;
381 virtual void setWindFetch(
float distance);
383 virtual float windFetch()
const;
387 virtual void setSeaChoppiness(
float chop);
389 virtual float seaChoppiness()
const;
394 void setUnderwaterVisibilityEnabled(
bool enabled);
395 bool underwaterVisibilityEnabled()
const;
399 virtual void setUnderwaterVisibility(
float distance);
401 virtual float underwaterVisibility()
const;
405 virtual void setWaterSurfaceTransparency(
float normalizedValue);
407 virtual float waterSurfaceTransparency()
const;
411 virtual void setSurgeDepth(
float meters);
413 virtual float surgeDepth()
const;
417 virtual void setDepthOffset(
float meters);
419 virtual float depthOffset()
const;
423 virtual void setAmbientWaterTemperature(
float temperature);
425 virtual float ambientWaterTemperature()
const;
429 virtual void setWaterCurrentSpeed(
float speed);
431 virtual float waterCurrentSpeed()
const;
435 virtual void setWaterCurrentDirection(
float direction);
438 virtual float waterCurrentDirection()
const;
442 virtual void setTidalOffset(
float meters);
444 virtual float tidalOffset()
const;
448 virtual void setTidalDirection(
bool inOut);
450 virtual bool tidalDirection()
const;
454 virtual void setThermoclineDepth(
unsigned int layer,
float depth);
456 virtual float thermoclineDepth(
unsigned int layer)
const;
460 virtual void setThermoclinePermeability(
unsigned int layer,
float permeability);
462 virtual float thermoclinePermeability(
unsigned int layer)
const;
466 virtual void setGroundSnowAccumulation(
float depth);
468 virtual float groundSnowAccumulation()
const;
472 virtual void setRoadSnowAccumulation(
float depth);
474 virtual float roadSnowAccumulation()
const;
478 virtual void setSnowMinimumElevation(
float elevation);
480 virtual float snowMinimumElevation()
const;
485 virtual void setSnowElevationTransition(
float elevation);
486 virtual float snowElevationTransition()
const;
490 virtual void setGroundRainAccumulation(
float depth);
492 virtual float groundRainAccumulation()
const;
501 virtual void removeLocalWind(
DtUniqueID id)
const;
510 virtual void setLocalWindSpeed(
DtUniqueID id,
float windSpeed);
518 virtual float lightLevel()
const;
523 void loadDefaults(
bool loadOnlyFactorySettings =
false);
529 void saveAsDefaults();
533 virtual void exportSettings(
const std::string&
filename);
535 virtual void importSettings(
const std::string& filename);
540 return mySettingsBackup;
545 return mySettingsBackup;
549 virtual float seaLevel()
const;
551 virtual void initializeEnvironmentSettings();
563 virtual void resetClouds();
568 virtual void refreshCloudLayerThicknessIfNeeded();
571 virtual void clearCloudsFromSky();
576 virtual void addElevationalCloudLayersToCloudCoverManagerIfNeeded();
580 virtual void sendToSkyAllCloudLayers();
585 virtual void sendToSkyCloudLayerEnabled(
DtCloudLayerId layerId,
bool enabled);
592 virtual void slot_listenToRemoteEnvironmentSettingsChanged(
bool allowSimMessages);
594 virtual void slot_cloudCoverCloudLayerEnabledChanged(
DtCloudLayerId layerId,
bool enableState);
595 virtual void slot_cloudCoverCloudLayerModified(
DtCloudLayerId layerId);
596 virtual void slot_cloudCoverCloudLayerPositionAndOrientationChanged(
DtCloudLayerId layerId,
597 const DtVector& position,
float orientation);
598 virtual void slot_cloudCoverCloudLayerAdded(
DtCloudLayerId layerId);
599 virtual void slot_cloudCoverCloudLayerToBeRemoved(
DtCloudLayerId layerId);
600 virtual void slot_cloudCoverToBeRemoved(
const std::string& cloudCoverName);
603 virtual void slot_coordinateSystemChanged();
606 virtual void slot_oceanLayerAdded(
const DtOceanLayer& layer);
609 virtual void slot_oceanLayerToBeDeleted(
const DtOceanLayer& layer);
612 virtual void slot_oceanLayerSeaLevelChanged(
const DtOceanLayer& layer,
617 virtual void slot_oceanLayerLodRangeChanged(
const DtOceanLayer& layer,
621 virtual void slot_surgeDepthChanged(
double depth);
624 virtual void slot_depthOffsetChanged(
double offset);
627 virtual void updateEnvironment();
631 virtual void initializeOcean();
634 virtual void enableCurrentCloudCoverLayers();
635 virtual void disableCurrentCloudCoverLayers();
637 virtual void autoSave();
641 virtual void sendMarineEnvironmentToOceanObject();
645 virtual void sendWeatherEnvironmentToSkyObject();
719 boost::signalslib::signal<void (
unsigned int layerId,
724 boost::signalslib::signal<void (unsigned int layerId, const DtCloudLayer& changedLayer)>
756 boost::signalslib::signal<void (double normalizedValue)>
766 boost::signalslib::signal<void (unsigned int layer, float depth)>
768 boost::signalslib::signal<void (unsigned int layer, float permeability)>
770 boost::signalslib::signal< void(const std::string& environmentName) >
DtRecordSettingsBackup< DtEnvironment, makArchives::DtEnvironmentRecord > DtEnvironmentSettingsBackup
Definition: DtEnvironment.h:814
DT_DLL_EXAMPLESCENEROOTPLUGIN void init(DtDe &anIG)
DtDe & myDe
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:648
float mySeaLevel
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:677
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
The declaration of the makVrv::DtEnvironmentInterface class.
boost::signalslib::signal< void(float radians)> signal_seaStateDirectionChanged
Definition: DtEnvironment.h:748
Definition: DtEnvironment.h:683
boost::signalslib::signal< void(float depth)> signal_groundSnowAccumulationChanged
Definition: DtEnvironment.h:772
boost::signalslib::signal< void(float height)> signal_fogHeightChanged
Definition: DtEnvironment.h:727
boost::signalslib::signal< void(float pressure)> signal_ambientAirPressureChanged
Definition: DtEnvironment.h:739
boost::signalslib::signal< void(double meters)> signal_underwaterVisibilityChanged
Definition: DtEnvironment.h:755
boost::signalslib::signal< void()> signal_atmosphericParametersChanged
Definition: DtEnvironment.h:711
DtLocalWindObjectManager & myLocalWindManager
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:675
boost::signalslib::signal< void(float speed)> signal_waterCurrentSpeedChanged
Definition: DtEnvironment.h:762
boost::signalslib::signal< void(const std::string &environmentName) > signal_environmentChanged
Definition: DtEnvironment.h:771
boost::signalslib::signal< void()> signal_precipitationSettingsChanged
Definition: DtEnvironment.h:714
The DtLocalWindObjectManager manages and sets values for a DtLocalWindObjectAgents. The DtLocalWindObjectManager is usually accessed through the DtEnvironment. You can addLocalWind, removeLocalWind in the DtEnvironment and it will communicate to the DtLocalWindObjectManager to create or destroy a DtLocalWindObjectAgent which will create or destroy a DtOsgEarthLocalWindObject (via vrvCore/DtLocalWindObject) and call the osgEarth API.
Definition: DtLocalWindObjectManager.h:32
DtSettingsBackup * settingsBackup()
Definition: DtEnvironment.h:543
makArchives::DtEnvironmentRecord myCurrentSettings
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:664
boost::signalslib::signal< void(float meters)> signal_tidalOffsetChanged
Definition: DtEnvironment.h:764
The shared settings manager, is the global object responsible for managing any shared settings object...
Definition: DtSharedSettingsManager.h:42
The declaration of the makVrv::DtEnvironmentList class.
boost::signalslib::signal< void(float kelvins)> signal_ambientWaterTemperatureChanged
Definition: DtEnvironment.h:761
DtEnvironmentList myEnvironmentList
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:671
boost::signalslib::signal< void(DtDouglasSwellState::Scale swellstate)> signal_swellStateChanged
Definition: DtEnvironment.h:750
VisibilityObscurant
Definition: DtEnvironmentRecord.h:21
The makVrv::DtRecordSettingsBackup is a templaced class that settings records will use in order to ba...
Definition: DtRecordSettingsBackup.h:100
boost::signalslib::signal< void(unsigned int layerId, const DtCloudLayer &newLayer)> signal_cloudLayerAdded
Definition: DtEnvironment.h:720
The DtEnvironment configures the environmental effects for a scene. Environmental effects include clo...
Definition: DtEnvironment.h:48
The weather processor signaler class is used to connect the Environment Widget with the WeatherProces...
Definition: DtEnvironment.h:785
Contains makVrv::event_signal class.
boost::signalslib::signal< void(float baseMSLAltitude)> signal_elevationalConfigurationRemoved
Definition: DtEnvironment.h:732
boost::signalslib::signal< void(bool enable)> signal_underwaterVisibilityEnabledChanged
Definition: DtEnvironment.h:754
The signaler for the dt environment.
Definition: DtEnvironment.h:700
Record for an elevational configuration A record of this type consists of 1) a base MSL altitude...
Definition: DtEnvironmentRecord.h:236
The event queue interface is a cross thread event queue used to emit event_signal across thread bound...
Definition: DtEventQueueInterface.h:26
const DtSettingsBackup * settingsBackup() const
Definition: DtEnvironment.h:538
boost::signalslib::signal< void(float radians)> signal_swellStateDirectionChanged
Definition: DtEnvironment.h:751
DtSignalConnectionManager myRemoteEnvironmentConnections
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:661
boost::signalslib::signal< void(float depth)> signal_groundRainAccumulationChanged
Definition: DtEnvironment.h:776
Scale
Definition: DtDouglasSeaScale.h:33
boost::signalslib::signal< void(bool seaLevel)> signal_airPressureAltitudeIsSeaLevelChanged
Definition: DtEnvironment.h:743
boost::signalslib::signal< void(const DtVector &color)> signal_fogColorChanged
Definition: DtEnvironment.h:729
boost::signalslib::signal< void(bool enabled)> signal_windDrivenSeaStateChanged
Definition: DtEnvironment.h:749
Contains DtLocalWindObjectManager class.
boost::signalslib::signal< void(float oldBaseMSLAltitude, float newBaseMSLAltitude)> signal_elevationalConfigurationMoved
Definition: DtEnvironment.h:733
boost::signalslib::signal< void(float water)> signal_seaLevelWaterConcentrationChanged
Definition: DtEnvironment.h:744
event_signal< void() > signal_refreshRemoteWeather
Definition: DtEnvironment.h:804
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
The DtEnvironmentInterface is an interface class providing abstraction for different managers of envi...
Definition: DtEnvironmentInterface.h:40
DtRecordSettingsBackupInterface * mySettingsBackup
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:659
Record of a single cloud layer's settings.
Definition: DtCloudLayerRecord.h:17
The declaration of the makArchives::DtEnvironmentRecord class.
DtSkyObjectAgent * mySkyObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:655
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Scale
Definition: DtDouglasSeaScale.h:114
boost::signalslib::signal< void(float elevation)> signal_snowMinimumElevationChanged
Definition: DtEnvironment.h:774
boost::signalslib::signal< void(unsigned int layerId)> signal_cloudLayerToBeDestroyed
Definition: DtEnvironment.h:722
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Representation of a single cloud layer.
Definition: DtCloudLayer.h:34
boost::signalslib::signal< void(float elevation)> signal_snowElevationTransitionChanged
Definition: DtEnvironment.h:775
Record of environment/weather settings Includes precipitation, air, and clouds.
Definition: DtEnvironmentRecord.h:36
Provides a method of doign settings backup.
Definition: DtSettingsBackup.h:23
DtWeatherEffectsObjectAgent * myWeatherEffectsObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:657
Rotorwash and rotorwash collision object information.
std::string myEnvironmentRecordNameToRestore
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:668
DtAgentManagerInterface & mySceneInterface
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:649
PrecipitationType
Definition: DtEnvironmentInterface.h:44
boost::signalslib::signal< void(float chop)> signal_seaChoppinessChanged
Definition: DtEnvironment.h:753
The ocean layer is a type of terrain layer which contains information about an area that should be re...
Definition: DtOceanLayer.h:25
Base class to provide boost signal/slot management.
boost::signalslib::signal< void(float altitude)> signal_airPressureAltitudeChanged
Definition: DtEnvironment.h:741
boost::signalslib::signal< void(double normalizedValue)> signal_waterSurfaceTransparencyChanged
Definition: DtEnvironment.h:757
WindType
This matches makOsgEarth enums for Wind These should be in synch!
Definition: DtRotorWashInfo.h:47
boost::signalslib::signal< void(float depth)> signal_roadSnowAccumulationChanged
Definition: DtEnvironment.h:773
boost::signalslib::signal< void(float distance)> signal_windFetchChanged
Definition: DtEnvironment.h:752
boost::signalslib::signal< void(float direction)> signal_waterCurrentDirectionChanged
Definition: DtEnvironment.h:763
boost::signalslib::signal< void(float kelvins)> signal_ambientAirTemperatureChanged
Definition: DtEnvironment.h:738
boost::signalslib::signal< void(unsigned int layerId, const DtCloudLayer &changedLayer)> signal_cloudLayerChanged
Definition: DtEnvironment.h:725
long long DtCloudLayerId
Definition: DtCloudLayer.h:26
boost::signalslib::signal< void(DtEnvironmentInterface::DtElevationalConfigurationRecord)> signal_elevationalConfigurationUpdated
Definition: DtEnvironment.h:735
boost::signalslib::signal< void(double meters)> signal_depthOffsetChanged
Definition: DtEnvironment.h:759
The abstract interface necessary for agents.
Definition: DtAgentManagerInterface.h:33
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
DtDynamicOceanObjectAgent * myDynamicOceanObject
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:656
boost::signalslib::signal< void(double meters)> signal_surgeDepthChanged
Definition: DtEnvironment.h:758
The makVrv::DtRecordSettingsBackupInterface provides an interface to record-based backups...
Definition: DtRecordSettingsBackup.h:24
voidpf uLong offset
Definition: ioapi.h:42
DtSignalConnectionManager myConnections
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:660
DtVector myGroundFogColor
Slots connected to the Sky Conditions Manager.
Definition: DtEnvironment.h:680
boost::signalslib::signal< void(float altitude)> signal_airTemperatureAltitudeChanged
Definition: DtEnvironment.h:740
boost::signalslib::signal< void(bool seaLevel)> signal_airTemperatureAltitudeIsSeaLevelChanged
Definition: DtEnvironment.h:742
boost::signalslib::signal< void(DtEnvironmentInterface::DtElevationalConfigurationRecord)> signal_elevationalConfigurationAdded
Definition: DtEnvironment.h:734
CloudType
Cloud layer types.
Definition: DtCloudTypeMapper.h:35
boost::signalslib::signal< void(unsigned int layer, float depth)> signal_thermoclineDepthChanged
Definition: DtEnvironment.h:767
boost::signalslib::signal< void(DtDouglasSeaState::Scale seastate)> signal_seaStateChanged
Definition: DtEnvironment.h:747
The DtEnvironmentList maintains a list of DtEnvironment records that can be looked up by the environm...
Definition: DtEnvironmentList.h:32
std::vector< DtCloudLayer > CloudLayersVector
Definition: DtEnvironment.h:555
boost::signalslib::signal< void(unsigned int layer, float permeability)> signal_thermoclinePermeabilityChanged
Definition: DtEnvironment.h:769
boost::signalslib::signal< void(bool)> signal_lightningPresentChanged
Definition: DtEnvironment.h:717
boost::signalslib::signal< void(bool inOut)> signal_tidalDirectionChanged
Definition: DtEnvironment.h:765
Contains DLL export macros.