VR-Forces Development_Version 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) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/DtDe.h>
15 #include <vrvUtil/signalslib.h>
16 
17 namespace makVrv
18 {
19 
20  class DtCoordinateSystem;
21  class DtDeSharedStateProctor;
22  class DtModelDefinition;
23  class DtModelDefinitionManager;
24  class DtModelSetRealizationManager;
25  class DtModelDefinition;
26 
40  {
41 
42  public:
43 
45  friend class DtDeSharedStateCreator;
46 
49  friend class DtDeSharedStateProctor;
50 
52  virtual ~DtDeSharedState();
53 
55  virtual void initialize();
56 
58 
59 
62  virtual const DtModelDefinitionManager& modelDefinitionManager() const;
63  virtual DtModelDefinitionManager& modelDefinitionManager();
64 
67  virtual const DtModelSetRealizationManager& modelSetRealizationManager() const;
68 
71  virtual void setVisualizeModelSet( int modelset, bool visualize );
72 
75  virtual void addModelDefinition(const DtModelDefinition& definition);
76 
79  virtual void setModelDefinitionManager(
80  const DtModelDefinitionManager& definition);
81 
85  virtual void renameModelDefinition(const DtModelDefinition& old,
86  const DtModelDefinition& newDef);
87 
90  virtual void destroyModelDefinition(const DtModelDefinition& definition);
91 
93  virtual void setModelInstancingEnabled(bool);
94 
96  virtual void clearModelInstancingCache();
97 
99 
101 
102 
103  virtual void setCoordinateSystem(const std::string& coordinateSystemName,
104  const std::string& coordinateSystemParameters);
105 
107  const DtCoordinateSystem& coordinateSystem() const;
108  DtCoordinateSystem& coordinateSystem();
109 
111 
113 
114 
115 
130  virtual void setDateAndTime(int year, DtDeTimeManager::Month month,
131  int dayOfMonth, int hour, int minutes,double seconds);
132 
135  virtual void setUseGlobalTimeZone(bool);
136 
139  virtual void setTimeScale(double timeScale);
140 
142  const DtDeTimeManager& timeManager() const;
143 
146  DtDeTimeManager& timeManager();
147 
149 
151 
152 
154  virtual void reloadShader();
155 
157  virtual void setWireframeMode(bool state);
158  virtual bool wireframeMode() const;
159 
161  virtual bool terrainScalingEnabled() const;
162  virtual void setTerrainScalingEnabled(bool enabled);
163 
164  virtual double terrainScaleFactor() const;
165  virtual void setTerrainScaleFactor(double scaleFactor);
166 
167  virtual bool clearTrackHistoryOnTerrainScaleChanged() const;
168  virtual void setClearTrackHistoryOnTerrainScaleChanged(bool clear );
169 
171  virtual bool useAutofocus() const;
172  virtual void setUseAutofocus(bool useAutofocus);
173 
175  virtual double focalDepth() const;
176  virtual void setFocalDepth(double focalDepth);
177 
179  virtual double focalRange() const;
180  virtual void setFocalRange(double focalRange);
181 
184  virtual float globalAmbientValue() const;
185  virtual void setGlobalAmbientValue(float globalAmbientValue);
186 
187  virtual bool useGlobalAmbient() const;
188  virtual void setUseGlobalAmbient(bool useGlobalAmbient);
189 
192  virtual float globalDiffuseValue() const;
193  virtual void setGlobalDiffuseValue(float globalDiffuseValue);
194 
195  virtual bool useGlobalDiffuse() const;
196  virtual void setUseGlobalDiffuse(bool useGlobalDiffuse);
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 lensFlareEnabled() const;
212  virtual void setLensFlareEnabled( bool setting );
213 
214  virtual bool crepuscularRaysEnabled() const;
215  virtual void setCrepuscularRaysEnabled( bool setting );
216 
217  virtual int componentVisualizationMode() const;
218  virtual void setComponentVisualizationMode(int value);
219 
220  virtual double regenerateCubeMapThreshold() const;
221  virtual void setRegenerateCubeMapThreshold(double threshold);
222 
223  virtual double regenerateHeightMapPercThreshold() const;
224  virtual void setRegenerateHeightMapPercThreshold(double threshold);
225 
226  virtual bool omitCloudInCubeMap() const;
227  virtual void setOmitCloudInCubeMap(bool omit);
228 
232  virtual void setInstancedRenderingEnabled(bool enabled);
233 
237  virtual bool instancedRenderingEnabled() const;
238 
240  virtual void setShadowState(bool shadowMode);
241 
242  virtual bool shadowMode() const;
243 
244  virtual void loadRenderSettings(const std::string& filepath);
245  virtual void saveRenderSettings(const std::string& filepath);
246  virtual void loadDefaultRenderSettings(bool useOnlyFactorySettings);
247  virtual void saveDefaultRenderSettings();
248  virtual void updateRenderState();
249 
251 
253 
254 
256  virtual void setDdsFlip(bool state);
257 
259  virtual bool ddsFlip() const;
260 
261  virtual void loadLoaderSettings(const std::string& filepath);
262  virtual void saveLoaderSettings(const std::string& filepath);
263  virtual void loadDefaultLoaderSettings(bool useOnlyFactorySettings);
264  virtual void saveDefaultLoaderSettings();
265  virtual void updateLoaderState();
266 
268 
270 
271 
273  virtual void setAccelerationCachingEnabled(bool enabled);
274 
276  virtual bool accelerationCachingEnabled() const;
277 
279  virtual void clearAccelerationCache() const;
280 
282  virtual void setInstancingEnabled(bool enabled);
283 
285  virtual void setClearInstancesOnNewSceneEnabled(bool enabled);
286 
288  virtual bool instancingEnabled() const;
289 
291  virtual bool clearInstancesOnNewScene() const;
292 
294  virtual void clearInstancingCache();
295 
297  virtual void setCompressTextures(bool enabled);
298 
300  virtual bool compressTextures() const;
301 
302  virtual void loadCacheSettings(const std::string& filepath);
303  virtual void saveCacheSettings(const std::string& filepath);
304  virtual void loadDefaultCacheSettings(bool useOnlyFactorySettings);
305  virtual void saveDefaultCacheSettings();
306  virtual void updateCacheState();
307 
309 
311 
312 
313  virtual bool oceanPlanarReflectionsEnabled() const;
314  virtual void setOceanPlanarReflectionsEnabled( bool setting );
315 
316  virtual float oceanPlanarReflectionsLODScale() const;
317  virtual void setOceanPlanarReflectionsLODScale( float setting );
318 
319  virtual bool oceanPlanarReflectionsSpecifyFarClip() const;
320  virtual void setOceanPlanarReflectionsSpecifyFarClip( bool setting );
321 
322  virtual double oceanPlanarReflectionsFarClip() const;
323  virtual void setOceanPlanarReflectionsFarClip( double setting );
324 
325  virtual double staticOceanLodRange() const;
326  virtual void setStaticOceanLodRange( double range );
327 
328  virtual bool waveSprayEffectEnabled() const;
329  virtual void setWaveSprayEffectEnabled( bool setting );
330 
331  virtual bool rotorWashDecalEnabled() const;
332  virtual void setRotorWashDecalEnabled( bool setting );
333 
334  virtual double oceanHeightMapResolution() const;
335  virtual void setOceanHeightMapResolution( double setting );
336 
337  virtual void setOceanHeightMapTextureSize(int setting);
338  virtual int oceanHeightMapTextureSize() const;
339 
340 
344  virtual void setTidalStreamWakesEnabled(bool enabled);
345 
349  virtual bool tidalStreamWakesEnabled() const;
350 
351  virtual int planarReflectionTextureWidth() const;
352  virtual void setPlanarReflectionTextureWidth( int w );
353 
354  virtual int planarReflectionTextureHeight() const;
355  virtual void setPlanarReflectionTextureHeight( int h );
356 
357  virtual void loadOceanRenderSettings(const std::string& filepath);
358  virtual void saveOceanRenderSettings(const std::string& filepath);
359  virtual void loadDefaultOceanRenderSettings(bool useOnlyFactorySettings);
360  virtual void saveDefaultOceanRenderSettings();
361  virtual void updateOceanRenderState();
363 
365  virtual void setPagedLodMagnificationHighLodAngle(float angle);
366  virtual float pagedLodMagnificationHighLodAngle() const;
367 
369 
370 
371  virtual float lightingEmissionScale() const;
372  virtual void setLightingEmissionScale( float setting );
373 
374  virtual float lightingDiffuseScale() const;
375  virtual void setLightingDiffuseScale(float setting);
376 
377  virtual float lightingAmbientScale() const;
378  virtual void setLightingAmbientScale(float setting);
379 
380  virtual void loadLightingRenderSettings(const std::string& filepath);
381  virtual void saveLightingRenderSettings(const std::string& filepath);
382  virtual void loadDefaultLightingRenderSettings(bool useOnlyFactorySettings);
383  virtual void saveDefaultLightingRenderSettings();
384  virtual void updateLightingRenderState();
386 
387 
389 
390 
391  virtual bool intersectorDrawEnabled() const;
392  virtual void setIntersectorDrawEnabled( bool setting );
393 
394  virtual float intersectorDrawnDuration() const;
395  virtual void setIntersectorDrawnDuration(float setting);
396 
397  virtual const DtColorValue& failedIntersectorColor() const;
398  virtual void setFailedIntersectorColor(const DtColorValue& setting);
399 
400  virtual const DtColorValue& oddSegmentIntersectorColor() const;
401  virtual void setOddSegmentIntersectorColor(const DtColorValue& setting);
402 
403  virtual const DtColorValue& evenSegmentIntersectorColor() const;
404  virtual void setEvenSegmentIntersectorColor(const DtColorValue& setting);
405 
406  virtual void loadIntersectorSettings(const std::string& filepath);
407  virtual void saveIntersectorSettings(const std::string& filepath);
408  virtual void loadDefaultIntersectorSettings(bool useOnlyFactorySettings);
409  virtual void saveDefaultIntersectorSettings();
410  virtual void updateIntersectorState();
411 
412  virtual const bool diGuyInstancingEnabled() const;
413  virtual void setDiGuyInstancingEnabled(bool enabled);
414 
415  virtual const int diGuyInstancedLod() const;
416  virtual void setDiGuyInstancedLod(int lod);
417 
418  virtual const bool diGuyVisualizeInstancing() const;
419  virtual void setDiGuyVisualizeInstancing(bool enabled);
420 
421  virtual const float diGuyMaxDrawDistance() const;
422  virtual void setDiGuyMaxDrawDistance(float distance);
423 
424  virtual const bool diGuyMultiThreadUpdate() const;
425  virtual void setDiGuyMultiThreadUpdate(bool enabled);
426 
427  virtual void loadDiGuySettings(const std::string& filepath);
428  virtual void saveDiGuySettings(const std::string& filepath);
429  virtual void loadDefaultDiGuySettings(bool useOnlyFactorySettings);
430  virtual void saveDefaultDiGuySettings();
431  virtual void updateDiGuyState();
432 
434 
435 
436  virtual void initializeSharedChangeManager();
437 
439 
440 
443  virtual void synchronizeSlave(DtDeRecord* igRecord);
444 
446 
447  void setAutoSave(bool b)
448  {
449  myAutoSave = b;
450  }
451 
452  bool autoSave() const
453  {
454  return myAutoSave;
455  }
456 
457  protected:
458 
461 
463  virtual void sendModelDefinitionsToSlave(DtMessageClient* messageClient);
464 
467  virtual void sendModelSetConfigurationToSlave(
468  DtMessageClient* messageClient);
469 
470 
472 
473 
475  virtual void local_setModelDefinitionManager(const DtModelDefinitionManager& definition);
476 
478  virtual void local_addModelDefinition(const DtModelDefinition& definition);
479 
481  virtual void local_destroyModelDefinition(const std::string& definition);
483 
485  virtual void local_setModelInstancingEnabled(bool);
486 
488  virtual void local_clearModelInstancingCache();
489 
491  virtual void local_reloadShader();
492 
494  virtual void local_setWireframeMode(bool mode);
495 
497  virtual void local_setTerrainScalingEnabled(bool enabled);
498 
500  virtual void local_setTerrainScaleFactor(double scaleFactor);
501 
503  virtual void local_setUseAutofocus(bool useAutofocus);
504 
506  virtual void local_setFocalDepth(double focalDepth);
507 
509  virtual void local_setFocalRange(double focalRange);
510 
512  virtual void local_setGlobalAmbientValue(float globalAmbientValue);
513 
515  virtual void local_setUseGlobalAmbient(bool useGlobalAmbient);
516 
518  virtual void local_setGlobalDiffuseValue(double globalDiffuseValue);
519 
521  virtual void local_setUseGlobalDiffuse(bool useGlobalDiffuse);
522 
524  virtual void local_setClearTrackHistoryOnTerrainScaleChanged(bool clear);
525 
527  virtual void local_setPlanViewGeocentricOccludedTransparency(float alpha);
528 
530  virtual void local_setShadowState(bool mode);
531 
533  virtual void local_ddsFlipState(bool flip);
534 
536  virtual void local_setVisualizeModelSet( int modelSet, bool visualize );
537 
539  void local_setCoordinateSystem(const std::string& coordinateSystemName,
540  const std::string& coordinateSystemParameters);
541 
543  virtual void local_setPerPixelLightingEnabled(bool mode);
544 
546  virtual void local_setOceanPlanarReflectionsEnabled(bool mode);
547 
549  virtual void local_setOceanPlanarReflectionsLODScale(float val);
550 
552  virtual void local_setOceanPlanarReflectionsSpecifyFarClip(bool mode);
553 
555  virtual void local_setOceanPlanarReflectionsFarClip(double val);
556 
557  virtual void local_setStaticOceanLodRange(double range);
558 
560  virtual void local_setLensFlareEnabled(bool mode);
561 
563  virtual void local_setCrepuscularRaysEnabled(bool mode);
564 
566  virtual void local_setWaveSprayEffectEnabled(bool mode);
567 
569  virtual void local_setRotorWashDecalEnabled(bool mode);
570 
572  virtual void local_setOceanHeightMapResolution(double resolution);
573 
575 
576  void local_setDateAndTime(int year, DtDeTimeManager::Month month,int dayOfMonth,
577  int hour, int minutes,double seconds);
578  void local_setTimeScale(double timeScale);
579  void local_setUseGlobalTimeZone(bool);
581 
583 
584 
586  virtual void local_setAccelerationCachingEnabled(bool enabled);
587 
589  virtual void local_clearAccelerationCache();
590 
592  virtual void local_setInstancingEnabled( bool enabled );
593 
595  virtual void local_setClearInstancesOnNewScene( bool enabled );
596 
598  virtual void local_clearInstancingCache();
599 
601  virtual void local_setCompressTextures( bool enabled );
602 
604  virtual void local_setTidalStreamWakesEnabled( bool enabled );
606 
610  virtual void local_setInstancedRenderingEnabled(bool enabled);
611 
613  virtual void local_setRegenerateCubeMapThreshold(double threshold);
614 
616  virtual void local_setRegenerateHeightMapPercThreshold(double threshold);
617 
619  virtual void local_setOmitCloudInCubeMap(bool enabled);
620 
622  virtual void local_setOceanHeightMapTextureSize(int val);
623 
624  virtual void local_setPlanarReflectionTextureWidth(int w);
625 
626  virtual void local_setPlanarReflectionTextureHeight(int w);
627 
629  virtual void local_setLightingEmissionScale(float val);
631  virtual void local_setLightingDiffuseScale(float val);
633  virtual void local_setLightingAmbientScale(float val);
634 
635 
636  virtual void local_setIntersectorDrawEnabled( bool setting );
637 
638  virtual void local_setIntersectorDrawnDuration(float setting);
639 
640  virtual void local_setFailedIntersectorColor(const DtColorValue& setting);
641 
642  virtual void local_setOddSegmentIntersectorColor(const DtColorValue& setting);
643 
644  virtual void local_setEvenSegmentIntersectorColor(const DtColorValue& setting);
645 
646 
647  virtual void local_setDiGuyInstancingEnabled(bool color);
648 
649  virtual void local_setDiGuyInstancedLod(int lod);
650 
651  virtual void local_setDiGuyVisualizeInstancing(bool enabled);
652 
653  virtual void local_setDiGuyMaxDrawDistance(float distance);
654 
655  virtual void local_setDiGuyMultiThreadUpdate(bool enabled);
656 
657  virtual void local_setPagedLodMagnificationHighLodAngle(float val);
658 
659  protected:
660 
667 
672  double myFocalDepth;
673  double myFocalRange;
702 
706 
712 
718  };
719 
723  {
724 
725  public:
726 
728  static DtDeSharedStateCreator& instance(DtDe&);
729 
731  static void registerInstance(DtDe& de, DtDeSharedStateCreator*);
732 
734  virtual DtDeSharedState* create(DtDe& de);
735 
736  };
737 
738 }

Document ID: Generated on Mon Jul 4 01:00:18 EDT 2016 from SVN revision 166489
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)