VR-Forces 4.3 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtForestSettingsManager.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 
16 
18 
19 namespace makVrv
20 {
21 
22  class DtDe;
23 
24  class DtForestSettingsSignaler;
25 
26  class DtForestEnvControllerAgent;
27 
31  : public DtBaseSettingsManager<makArchives::DtForestSettingsRecord>
32  {
33  public:
34 
36  static DtForestSettingsManager& instance( DtDe& de );
37 
39  virtual ~DtForestSettingsManager();
40 
43 
44  virtual void setFarClippingPlane(float farPlane);
45  virtual float farClippingPlane() const;
46 
47  virtual void set3DLodDistances(float fHigh, float fLow);
48  virtual float highDetail3dDistance() const;
49  virtual float lowDetail3dDistance() const;
50 
51  virtual void setBillboardDistances(float fStart, float fEnd);
52  virtual float billboardStartDistance() const;
53  virtual float billboardEndDistance() const;
54 
55  virtual void setTreesEnabled(bool enabled);
56  virtual bool treesEnabled() const;
57 
58  virtual void setAmbientScalar(float val);
59  virtual void setDiffuseScalar(float val);
60  virtual void setSpecularScalar(float val);
61  virtual void setTransmissionScalar(float val);
62  virtual void setAlphaScalar(float val);
63 
64  virtual float ambientScalar() const;
65  virtual float diffuseScalar() const;
66  virtual float specularScalar() const;
67  virtual float transmissionScalar() const;
68  virtual float alphaScalar() const;
69 
71 
74 
76  virtual void setFromRecord( const makArchives::DtForestSettingsRecord& rec );
77 
79  virtual void getRecord( makArchives::DtForestSettingsRecord& rec ) const;
80 
82 
83  protected:
84 
86  template <typename ManagerClass>
87  friend ManagerClass& defaultManagerInstanceFunction( DtDe&, bool );
88 
90  template <typename ManagerClass>
91  friend void defaultManagerRegisterInstanceFunction( DtDe&, ManagerClass* );
92 
95  virtual void slot_displayEngineAdded();
96 
97  void lazyCreateAgent(void);
98 
101 
102  protected:
103 
106  DtForestEnvControllerAgent* myForestEnvControllerAgent;
108  };
109 
111  {
112  public:
113  static DtForestSettingsSignaler& instance(DtDe&);
114 
115  virtual ~DtForestSettingsSignaler();
116 
117  boost::signal<void (float)> signal_farClippingPlaneSet;
118  boost::signal<void (float, float)> signal_3DLodDistancesSet;
119  boost::signal<void (float, float)> signal_BillboardDistancesSet;
120  boost::signal<void (bool)> signal_TreesEnabled;
121 
122  boost::signal<void (float)> signal_AmbientScalarSet;
123  boost::signal<void (float)> signal_DiffuseScalarSet;
124  boost::signal<void (float)> signal_SpecularScalarSet;
125  boost::signal<void (float)> signal_TransmissionScalarSet;
126  boost::signal<void (float)> signal_AlphaScalarSet;
127 
128  protected:
130  };
131 
132 }

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)