VR-Forces 4.1.1 Class Documentation
DtRenderer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 #include <vrvCore/vrvCore.h>
13 #include <boost/signals.hpp>
14 
15 namespace makVrv
16 {
17 
18  class DtDe;
19  class DtObserverObjectManager;
20  class DtOverlayManager;
21  class DtTickableManagerInterface;
22 
36 
39  {
40  public:
41 
43  DtRenderer(DtDe& de);
44 
46  virtual ~DtRenderer();
47 
49  virtual void update();
50 
52  virtual void postUpdate();
53 
55  DtObserverObjectManager* observerObjectManager();
56 
58  DtTickableManagerInterface& tickableManager();
59  const DtTickableManagerInterface& tickableManager() const;
60 
62  DtOverlayManager& overlayManager();
63  const DtOverlayManager& overlayManager() const;
64 
67  virtual bool exportTerrainAndProps(const std::string&) = 0;
68 
70  virtual void render() = 0;
71 
73  virtual void resetSceneGraph() = 0;
74 
76  virtual void setWireframeRendering(bool enabled) = 0;
77 
79  virtual bool wireframeRendering() const = 0;
80 
82  virtual void setShadowState(bool enabled, int quality, bool entity, bool props, bool terrain) =0;
83 
85  virtual bool shadowsEnabled() const = 0;
86 
88  virtual int shadowQuality() const = 0;
89 
91  virtual bool entityShadowsEnabled() const =0;
92 
94  virtual bool propShadowsEnabled() const =0;
95 
97  virtual bool terrainShadowsEnabled() const =0;
98 
100  virtual void releaseResources() = 0;
101 
104  boost::signal<void (double simTime)> signal_update;
105 
108  boost::signal<void (double simTime)> signal_postUpdate;
109 
112  boost::signal<void ()> signal_releaseResources;
113 
116  virtual bool makeContextCurrent() = 0;
117 
120  void createManagers();
121 
122  protected:
123 
128  };
129 
133  {
134  public:
135 
138  static DtRendererCreator& instance(DtDe& de);
139 
141  static void registerInstance(DtDe& de, DtRendererCreator* anInstance);
142 
144  virtual DtRenderer* create(DtDe& de) = 0;
145  };
146 
147 
148 
149 }

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)