24 class DtCloudLayerRecord;
25 class DtEnvironmentListRecord;
31 class DtAgentManagerInterface;
32 class DtSkyObjectAgent;
33 class DtDynamicOceanObjectAgent;
34 class DtEventQueueInterface;
35 class DtSharedSettingsManager;
38 class DtOceanStateInterface;
63 virtual void setFromRecord(
80 virtual void setEnvironment(
const std::string& name);
84 virtual void removeEnvironment(
const std::string& name);
87 virtual void renameEnvironment(
91 virtual void getEnvironmentNames(std::vector<std::string>&
names);
95 virtual void setDefaultEnvironmentName(
const std::string& name);
121 virtual int cloudLayerCount()
const;
125 virtual const DtCloudLayer& cloudLayer(
unsigned int layerId)
const;
128 virtual void setCloudLayer(
unsigned int layerId,
136 virtual void removeCloudLayer(
unsigned int layerId);
139 virtual void removeCloudLayers();
144 virtual void setCloudLayerEnabled(
unsigned int layerId,
bool enabled);
148 virtual bool useCustomCloudCover()
const;
149 virtual void setUseCustomCloudCover(
bool enabled);
154 virtual void setAirTurbidity(
float turbidity);
155 virtual float airTurbidity()
const;
160 virtual void setVisibleDistance(
float distance);
161 virtual float visibleDistance()
const;
172 virtual void setPrecipitationIntensity(
float intensity);
173 virtual float precipitationIntensity()
const;
178 virtual void setWindSpeed(
float speed);
179 virtual float windSpeed()
const;
184 virtual void setWindDirection(
float direction);
185 virtual float windDirection()
const;
190 virtual void setAmbientAirTemperature(
float temperature);
191 virtual float ambientAirTemperature()
const;
196 virtual void setFogHeight(
float height);
197 virtual float fogHeight()
const;
202 virtual void setFogColor(
const DtVector&
color);
203 virtual DtVector fogColor()
const;
208 virtual void setSeaState(
int state);
209 virtual int seaState()
const;
214 virtual void setSeaStateDirection(
float dir);
215 virtual float seaStateDirection()
const;
220 virtual void setWindDrivenSeaState(
bool enabled);
221 virtual bool windDrivenSeaState()
const;
226 virtual void setSwellState(
int state);
227 virtual int swellState()
const;
232 virtual void setSwellStateDirection(
float dir);
233 virtual float swellStateDirection()
const;
238 virtual void setWindFetch(
float distance);
239 virtual float windFetch()
const;
244 virtual void setSeaChoppiness(
float chop);
245 virtual float seaChoppiness()
const;
250 void setUnderwaterVisibilityEnabled(
bool enabled);
251 bool underwaterVisibilityEnabled()
const;
256 virtual void setUnderwaterVisibility(
float distance);
257 virtual float underwaterVisibility()
const;
262 virtual void setWaterSurfaceTransparency(
float normalizedValue);
263 virtual float waterSurfaceTransparency()
const;
268 virtual void setSurgeDepth(
float meters);
269 virtual float surgeDepth()
const;
274 virtual void setDepthOffset(
float meters);
275 virtual float depthOffset()
const;
280 virtual void setAmbientWaterTemperature(
float temperature);
281 virtual float ambientWaterTemperature()
const;
286 virtual void setWaterCurrentSpeed(
float speed);
287 virtual float waterCurrentSpeed()
const;
293 virtual void setWaterCurrentDirection(
float direction);
294 virtual float waterCurrentDirection()
const;
299 virtual void setTidalOffset(
float meters);
300 virtual float tidalOffset()
const;
305 virtual void setTidalDirection(
bool inOut);
306 virtual bool tidalDirection()
const;
311 virtual void setThermoclineDepth(
unsigned int layer,
float depth);
312 virtual float thermoclineDepth(
unsigned int layer)
const;
317 virtual void setThermoclinePermeability(
unsigned int layer,
float permeability);
318 virtual float thermoclinePermeability(
unsigned int layer)
const;
325 virtual float lightLevel()
const;
330 void loadDefaults(
bool loadOnlyFactorySettings =
false);
336 void saveAsDefaults();
341 virtual void exportSettings(
const std::string& filename);
342 virtual void importSettings(
const std::string& filename);
347 return mySettingsBackup;
352 return mySettingsBackup;
356 virtual bool getIsUnderwater()
const;
371 virtual bool isOverWater(
const DtVector& localPosition,
bool isVisible=
true);
374 virtual float getMaximumWaveHeight();
377 virtual float seaLevel()
const;
384 virtual void deleteOceanManager();
391 virtual void slot_coordinateSystemChanged();
394 virtual void slot_oceanLayerAdded(
const DtOceanLayer& layer);
397 virtual void slot_oceanLayerToBeDeleted(
const DtOceanLayer& layer);
400 virtual void slot_oceanLayerSeaLevelChanged(
const DtOceanLayer& layer,
405 virtual void slot_oceanLayerLodRangeChanged(
const DtOceanLayer& layer,
409 virtual void slot_surgeDepthChanged(
double depth);
412 virtual void slot_depthOffsetChanged(
double offset);
415 virtual void updateEnvironment();
419 virtual void initializeOcean();
421 virtual void createCloudLayers();
423 virtual void processAddedCloudLayer(
const DtCloudLayer& layer,
426 virtual void autoSave();
430 virtual void sendMarineEnvironmentToOceanObject();
434 virtual void sendWeatherEnvironmentToSkyObject();
438 virtual void sendCloudCoverToSkyObject();
488 boost::signal<
void (
unsigned int layerId,
493 boost::signal<void (unsigned int layerId, const DtCloudLayer& changedLayer)>
516 boost::signal<void (double normalizedValue)>
526 boost::signal<void (unsigned int layer, float depth)>
528 boost::signal<void (unsigned int layer, float permeability)>