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(
85 virtual void setEnvironment(
const std::string& name);
89 virtual void removeEnvironment(
const std::string& name);
92 virtual void renameEnvironment(
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;
113 virtual void setLightningPresent(
bool lightningPresent);
114 virtual bool lightningPresent()
const;
119 virtual void setAirTurbidity(
float turbidity);
120 virtual float airTurbidity()
const;
128 virtual void setVisibleDistance(
float distance);
129 virtual float visibleDistance()
const;
137 virtual void setWindSpeed(
float windSpeed);
138 virtual float windSpeed()
const;
146 virtual void setWindDirection(
float direction);
147 virtual float windDirection()
const;
158 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;
290 virtual void setAmbientAirTemperature(
float temperature);
291 virtual float ambientAirTemperature()
const;
296 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;
332 virtual void setFogHeight(
float height);
333 virtual float fogHeight()
const;
338 virtual void setFogColor(
const DtVector&
color);
339 virtual DtVector fogColor()
const;
344 virtual void setGroundFogColor(
const DtVector& color)
override;
345 virtual DtVector groundFogColor()
const override;
350 virtual void setSeaState(
int state);
351 virtual int seaState()
const;
356 virtual void setSeaStateDirection(
float dir);
357 virtual float seaStateDirection()
const;
362 virtual void setWindDrivenSeaState(
bool enabled);
363 virtual bool windDrivenSeaState()
const;
368 virtual void setSwellState(
int state);
369 virtual int swellState()
const;
374 virtual void setSwellStateDirection(
float dir);
375 virtual float swellStateDirection()
const;
380 virtual void setWindFetch(
float distance);
381 virtual float windFetch()
const;
386 virtual void setSeaChoppiness(
float chop);
387 virtual float seaChoppiness()
const;
392 void setUnderwaterVisibilityEnabled(
bool enabled);
393 bool underwaterVisibilityEnabled()
const;
398 virtual void setUnderwaterVisibility(
float distance);
399 virtual float underwaterVisibility()
const;
404 virtual void setWaterSurfaceTransparency(
float normalizedValue);
405 virtual float waterSurfaceTransparency()
const;
410 virtual void setSurgeDepth(
float meters);
411 virtual float surgeDepth()
const;
416 virtual void setDepthOffset(
float meters);
417 virtual float depthOffset()
const;
422 virtual void setAmbientWaterTemperature(
float temperature);
423 virtual float ambientWaterTemperature()
const;
428 virtual void setWaterCurrentSpeed(
float speed);
429 virtual float waterCurrentSpeed()
const;
435 virtual void setWaterCurrentDirection(
float direction);
436 virtual float waterCurrentDirection()
const;
441 virtual void setTidalOffset(
float meters);
442 virtual float tidalOffset()
const;
447 virtual void setTidalDirection(
bool inOut);
448 virtual bool tidalDirection()
const;
453 virtual void setThermoclineDepth(
unsigned int layer,
float depth);
454 virtual float thermoclineDepth(
unsigned int layer)
const;
459 virtual void setThermoclinePermeability(
unsigned int layer,
float permeability);
460 virtual float thermoclinePermeability(
unsigned int layer)
const;
465 virtual void setGroundSnowAccumulation(
float depth);
466 virtual float groundSnowAccumulation()
const;
471 virtual void setRoadSnowAccumulation(
float depth);
472 virtual float roadSnowAccumulation()
const;
477 virtual void setSnowMinimumElevation(
float elevation);
478 virtual float snowMinimumElevation()
const;
483 virtual void setSnowElevationTransition(
float elevation);
484 virtual float snowElevationTransition()
const;
489 virtual void setGroundRainAccumulation(
float depth);
490 virtual float groundRainAccumulation()
const;
499 virtual void removeLocalWind(
DtUniqueID id)
const;
504 virtual void setLocalWindLocation(
DtUniqueID id, DtVector loc);
509 virtual void setLocalWindSpeed(
DtUniqueID id,
float windSpeed);
516 virtual float lightLevel()
const;
521 void loadDefaults(
bool loadOnlyFactorySettings =
false);
527 void saveAsDefaults();
532 virtual void exportSettings(
const std::string& filename);
533 virtual void importSettings(
const std::string& filename);
538 return mySettingsBackup;
543 return mySettingsBackup;
547 virtual float seaLevel()
const;
549 virtual void initializeEnvironmentSettings();
551 virtual void initializeRemoteEnvironment();
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_allowSimMessagesSet(
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();
714 boost::signalslib::signal<
void (
unsigned int layerId,
719 boost::signalslib::signal<void (unsigned int layerId, const DtCloudLayer& changedLayer)>
751 boost::signalslib::signal<void (double normalizedValue)>
761 boost::signalslib::signal<void (unsigned int layer, float depth)>
763 boost::signalslib::signal<void (unsigned int layer, float permeability)>
765 boost::signalslib::signal< void(const std::string& environmentName) >