VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtDeSharedState.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 
14 #include <vrvCore/DtDe.h>
17 #include <vrvUtil/signalslib.h>
18 
19 namespace makVrv
20 {
21 
22  class DtCoordinateSystem;
23  class DtDeSharedStateProctor;
24  class DtModelDefinition;
25  class DtModelDefinitionManager;
26  class DtModelSetRealizationManager;
27  class DtModelDefinition;
28 
42  {
43 
44  public:
45 
47  friend class DtDeSharedStateCreator;
48 
51  friend class DtDeSharedStateProctor;
52 
54  virtual ~DtDeSharedState();
55 
57  virtual void initialize();
58 
60 
61 
64  virtual const DtModelDefinitionManager& modelDefinitionManager() const;
65  virtual DtModelDefinitionManager& modelDefinitionManager();
66 
69  virtual const DtModelSetRealizationManager& modelSetRealizationManager() const;
70 
73  virtual void setVisualizeModelSet( int modelset, bool visualize );
74 
77  virtual void addModelDefinition(const DtModelDefinition& definition);
78 
81  virtual void setModelDefinitionManager(
82  const DtModelDefinitionManager& definition);
83 
87  virtual void renameModelDefinition(const DtModelDefinition& old,
88  const DtModelDefinition& newDef);
89 
92  virtual void destroyModelDefinition(const DtModelDefinition& definition);
93 
95  virtual void setModelInstancingEnabled(bool);
96 
98  virtual void clearModelInstancingCache();
99 
101 
103 
104 
105  virtual void setCoordinateSystem(const std::string& coordinateSystemName,
106  const std::string& coordinateSystemParameters);
107 
109  const DtCoordinateSystem& coordinateSystem() const;
110  DtCoordinateSystem& coordinateSystem();
111 
113 
115 
116 
117 
132  virtual void setDateAndTime(int year, DtDeTimeManager::Month month,
133  int dayOfMonth, int hour, int minutes,double seconds);
134 
137  virtual void setUseGlobalTimeZone(bool);
138 
141  virtual void setTimeScale(double timeScale);
142 
144  const DtDeTimeManager& timeManager() const;
145 
148  DtDeTimeManager& timeManager();
149 
151 
153 
154 
156  virtual void reloadShader();
157 
159  virtual void setWireframeMode(bool state);
160  virtual bool wireframeMode() const;
161 
163  virtual bool terrainScalingEnabled() const;
164  virtual void setTerrainScalingEnabled(bool enabled);
165 
166  virtual double terrainScaleFactor() const;
167  virtual void setTerrainScaleFactor(double scaleFactor);
168 
169  virtual bool clearTrackHistoryOnTerrainScaleChanged() const;
170  virtual void setClearTrackHistoryOnTerrainScaleChanged(bool clear );
171 
173  virtual bool useAutofocus() const;
174  virtual void setUseAutofocus(bool useAutofocus);
175 
177  virtual double focalDepth() const;
178  virtual void setFocalDepth(double focalDepth);
179 
181  virtual double focalRange() const;
182  virtual void setFocalRange(double focalRange);
183 
185  virtual double ambientFactor() const;
186  virtual void setAmbientFactor(double ambientFactor);
187 
188  virtual bool useMaterialAmbient() const;
189  virtual void setUseMaterialAmbient(bool useMaterialAmbient);
190 
192  virtual double diffuseScaleFactor() const;
193  virtual void setDiffuseScaleFactor(double diffuseScaleFactor);
194 
195  virtual bool useMaterialDiffuse() const;
196  virtual void setUseMaterialDiffuse(bool useMaterialDiffuse);
197 
199  virtual void setPlanViewGeocentricOccludedTransparency(float f);
200  virtual float planViewGeocentricOccludedTransparency() const;
201 
202  virtual void setPerformanceOverlayOn(bool enabled);
203  virtual bool performanceOverlayEnabled() const;
204 
205  virtual void setProfilerOverlayOn(bool enabled);
206  virtual bool profilerOverlayEnabled() const;
207 
208  virtual bool perPixelLightingEnabled() const;
209  virtual void setPerPixelLightingEnabled( bool setting );
210 
211  virtual bool oceanPlanarReflectionsEnabled() const;
212  virtual void setOceanPlanarReflectionsEnabled( bool setting );
213 
214  virtual float oceanPlanarReflectionsLODScale() const;
215  virtual void setOceanPlanarReflectionsLODScale( float setting );
216 
217  virtual bool oceanPlanarReflectionsSpecifyFarClip() const;
218  virtual void setOceanPlanarReflectionsSpecifyFarClip( bool setting );
219 
220  virtual double oceanPlanarReflectionsFarClip() const;
221  virtual void setOceanPlanarReflectionsFarClip( double setting );
222 
223  virtual double staticOceanLodRange() const;
224  virtual void setStaticOceanLodRange( double range );
225 
226  virtual bool lensFlareEnabled() const;
227  virtual void setLensFlareEnabled( bool setting );
228 
229  virtual bool crepuscularRaysEnabled() const;
230  virtual void setCrepuscularRaysEnabled( bool setting );
231 
232  virtual bool waveSprayEffectEnabled() const;
233  virtual void setWaveSprayEffectEnabled( bool setting );
234 
235  virtual bool rotorWashDecalEnabled() const;
236  virtual void setRotorWashDecalEnabled( bool setting );
237 
238  virtual double oceanHeightMapResolution() const;
239  virtual void setOceanHeightMapResolution( double setting );
240 
241  virtual int componentVisualizationMode() const;
242  virtual void setComponentVisualizationMode(int value);
243 
244  virtual double regenerateCubeMapThreshold() const;
245  virtual void setRegenerateCubeMapThreshold(double threshold);
246 
247  virtual double regenerateHeightMapPercThreshold() const;
248  virtual void setRegenerateHeightMapPercThreshold(double threshold);
249 
250  virtual bool omitCloudInCubeMap() const;
251  virtual void setOmitCloudInCubeMap(bool omit);
252 
256  virtual void setInstancedRenderingEnabled(bool enabled);
257 
261  virtual bool instancedRenderingEnabled() const;
262 
266  virtual void setTidalStreamWakesEnabled(bool enabled);
267 
271  virtual bool tidalStreamWakesEnabled() const;
272 
274  virtual void setShadowState(bool shadowMode);
275 
276  virtual bool shadowMode() const;
277 
278  virtual void setOceanHeightMapTextureSize(int setting);
279  virtual int oceanHeightMapTextureSize() const;
280 
281  virtual void loadRenderSettings(const std::string& filepath);
282  virtual void saveRenderSettings(const std::string& filepath);
283  virtual void loadDefaultRenderSettings(bool useOnlyFactorySettings);
284  virtual void saveDefaultRenderSettings();
285  virtual void updateRenderState();
286 
288 
290 
291 
293  virtual void setDdsFlip(bool state);
294 
296  virtual bool ddsFlip() const;
297 
298  virtual void loadLoaderSettings(const std::string& filepath);
299  virtual void saveLoaderSettings(const std::string& filepath);
300  virtual void loadDefaultLoaderSettings(bool useOnlyFactorySettings);
301  virtual void saveDefaultLoaderSettings();
302  virtual void updateLoaderState();
303 
305 
307 
308 
310  virtual void setAccelerationCachingEnabled(bool enabled);
311 
313  virtual bool accelerationCachingEnabled() const;
314 
316  virtual void clearAccelerationCache() const;
317 
319  virtual void setInstancingEnabled(bool enabled);
320 
322  virtual void setClearInstancesOnNewSceneEnabled(bool enabled);
323 
325  virtual bool instancingEnabled() const;
326 
328  virtual bool clearInstancesOnNewScene() const;
329 
331  virtual void clearInstancingCache();
332 
334  virtual void setCompressTextures(bool enabled);
335 
337  virtual bool compressTextures() const;
338 
339  virtual void loadCacheSettings(const std::string& filepath);
340  virtual void saveCacheSettings(const std::string& filepath);
341  virtual void loadDefaultCacheSettings(bool useOnlyFactorySettings);
342  virtual void saveDefaultCacheSettings();
343  virtual void updateCacheState();
344 
346 
347 
350  virtual void initializeSharedChangeManager();
351 
353 
354 
357  virtual void synchronizeSlave(DtDeRecord* igRecord);
358 
360 
361  void setAutoSave(bool b)
362  {
363  myAutoSave = b;
364  }
365 
366  bool autoSave() const
367  {
368  return myAutoSave;
369  }
370 
371  protected:
372 
375 
377  virtual void sendModelDefinitionsToSlave(DtMessageClient* messageClient);
378 
381  virtual void sendModelSetConfigurationToSlave(
382  DtMessageClient* messageClient);
383 
384 
386 
387 
389  virtual void local_setModelDefinitionManager(const DtModelDefinitionManager& definition);
390 
392  virtual void local_addModelDefinition(const DtModelDefinition& definition);
393 
395  virtual void local_destroyModelDefinition(const std::string& definition);
397 
399  virtual void local_setModelInstancingEnabled(bool);
400 
402  virtual void local_clearModelInstancingCache();
403 
405  virtual void local_reloadShader();
406 
408  virtual void local_setWireframeMode(bool mode);
409 
411  virtual void local_setTerrainScalingEnabled(bool enabled);
412 
414  virtual void local_setTerrainScaleFactor(double scaleFactor);
415 
417  virtual void local_setUseAutofocus(bool useAutofocus);
418 
420  virtual void local_setFocalDepth(double focalDepth);
421 
423  virtual void local_setFocalRange(double focalRange);
424 
426  virtual void local_setAmbientFactor(double ambientFactor);
427 
429  virtual void local_setUseMaterialAmbient(bool useMaterialAmbient);
430 
432  virtual void local_setDiffuseScaleFactor(double diffuseScaleFactor);
433 
435  virtual void local_setUseMaterialDiffuse(bool useMaterialDiffuse);
436 
438  virtual void local_setClearTrackHistoryOnTerrainScaleChanged(bool clear);
439 
441  virtual void local_setPlanViewGeocentricOccludedTransparency(float alpha);
442 
444  virtual void local_setShadowState(bool mode);
445 
447  virtual void local_ddsFlipState(bool flip);
448 
450  virtual void local_setVisualizeModelSet( int modelSet, bool visualize );
451 
453  void local_setCoordinateSystem(const std::string& coordinateSystemName,
454  const std::string& coordinateSystemParameters);
455 
457  virtual void local_setPerPixelLightingEnabled(bool mode);
458 
460  virtual void local_setOceanPlanarReflectionsEnabled(bool mode);
461 
463  virtual void local_setOceanPlanarReflectionsLODScale(float val);
464 
466  virtual void local_setOceanPlanarReflectionsSpecifyFarClip(bool mode);
467 
469  virtual void local_setOceanPlanarReflectionsFarClip(double val);
470 
471  virtual void local_setStaticOceanLodRange(double range);
472 
474  virtual void local_setLensFlareEnabled(bool mode);
475 
477  virtual void local_setCrepuscularRaysEnabled(bool mode);
478 
480  virtual void local_setWaveSprayEffectEnabled(bool mode);
481 
483  virtual void local_setRotorWashDecalEnabled(bool mode);
484 
486  virtual void local_setOceanHeightMapResolution(double resolution);
487 
489 
490  void local_setDateAndTime(int year, DtDeTimeManager::Month month,int dayOfMonth,
491  int hour, int minutes,double seconds);
492  void local_setTimeScale(double timeScale);
493  void local_setUseGlobalTimeZone(bool);
495 
497 
498 
500  virtual void local_setAccelerationCachingEnabled(bool enabled);
501 
503  virtual void local_clearAccelerationCache();
504 
506  virtual void local_setInstancingEnabled( bool enabled );
507 
509  virtual void local_setClearInstancesOnNewScene( bool enabled );
510 
512  virtual void local_clearInstancingCache();
513 
515  virtual void local_setCompressTextures( bool enabled );
516 
518  virtual void local_setTidalStreamWakesEnabled( bool enabled );
520 
524  virtual void local_setInstancedRenderingEnabled(bool enabled);
525 
527  virtual void local_setRegenerateCubeMapThreshold(double threshold);
528 
530  virtual void local_setRegenerateHeightMapPercThreshold(double threshold);
531 
533  virtual void local_setOmitCloudInCubeMap(bool enabled);
534 
536  virtual void local_setOceanHeightMapTextureSize(int val);
537  protected:
538 
545 
550  double myFocalDepth;
551  double myFocalRange;
577  };
578 
582  {
583 
584  public:
585 
587  static DtDeSharedStateCreator& instance(DtDe&);
588 
590  static void registerInstance(DtDe& de, DtDeSharedStateCreator*);
591 
593  virtual DtDeSharedState* create(DtDe& de);
594 
595  };
596 
597 }

Document ID: Generated on Wed Mar 11 21:20:57 EDT 2015 from SVN revision 150940
Copyright © 2005-2014 VT MÄK. All Rights Reserved (www.mak.com)