VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
earthLayerVisibilityManager.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
7 
8 #pragma once
9 
10 #include <vrfGuiCore/vrfGuiCore.h>
13 
14 namespace makVrv
15 {
16  class DtDe;
17  class DtInputDriver;
18  class DtObserver;
19 }
20 
21 namespace osgEarth
22 {
23  class MapNode;
24 }
25 
26 namespace makVrf
27 {
31  {
32  public:
35 
38 
40  static DtEarthLayerVisibilityManager& instance(makVrv::DtDe& de);
41 
43  static void registerInstance(makVrv::DtDe&, DtEarthLayerVisibilityManager*);
44 
46  virtual void setImageLayerVisibleForMode(int layer, bool visible, int mode = -1);
47  virtual void setImageLayerVisibleForMode(const std::string& layerName, bool visible, int mode = -1);
48 
50  virtual void setModelLayerVisibleForMode(int layer, bool visible, int mode = -1);
51  virtual void setModelLayerVisibleForMode(const std::string& layerName, bool visible, int mode = -1);
52 
54  virtual std::vector<bool> imageLayerEnabledStates(int layer) const;
55  virtual std::vector<bool> imageLayerEnabledStates(const std::string& imageLayerName) const;
56 
58  virtual bool imageLayerEnabledState(int layer, int mode) const;
59  virtual bool imageLayerEnabledState(const std::string& imageLayerName, int mode) const;
60 
62  virtual std::vector<bool> modelLayerEnabledStates(int layer) const;
63  virtual std::vector<bool> modelLayerEnabledStates(const std::string& modelLayerName) const;
64 
66  virtual bool modelLayerEnabledState(int layer, int mode) const;
67  virtual bool modelLayerEnabledState(const std::string& modelLayerName, int mode) const;
68 
69  protected:
71  virtual std::string imageLayerName(int) const;
72  virtual int indexOfImageLayer(const std::string&) const;
73 
75  virtual std::string modelLayerName(int) const;
76  virtual int indexOfModelLayer(const std::string&) const;
77 
79  virtual std::string nameFromLayer(const std::string&) const;
80 
83  virtual void setLayerVisibilityState(const std::string& name, bool visible, bool curVisible, int mode) const;
84 
86  virtual void setup();
87 
89  virtual void slot_terrainCleared();
90 
91  virtual std::vector<bool> visibilityStates(const std::string& layerName) const;
92 
93  virtual bool visibilityState(const std::string& layerName, int mode) const;
94 
95  virtual void onCurrentObserverChanged(makVrv::DtInputDriver*, makVrv::DtObserver*);
96  virtual void onObserverAboutToBeDestroyed(makVrv::DtInputDriver*, makVrv::DtObserver*);
97  virtual void onObserverModeChanged(makVrv::DtObserver*, int mode);
98  virtual void setCurrentObserver(makVrv::DtObserver*);
99 
100  virtual void setupLayersBasedOnCurrentObserver();
101 
102  protected:
105 
106  mutable osgEarth::MapNode* myMapNode;
108  };
109 }

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)