VR-Forces 4.1 Class Documentation
DtObserverModeRecord.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 
13 
14 #include <string>
15 #include <map>
16 
17 namespace makArchives
18 {
24  {
25  public:
26 
27  typedef std::map< std::string, bool> ObserverSettingsMap;
28 
31 
34 
37 
39  DtObserverModeRecord& operator=( const DtObserverModeRecord& orig );
40 
45  void setModeKey( const std::string& modeKey );
46 
48  const std::string& modeKey() const;
49 
51  void setName( const std::string& name );
52 
54  const std::string& name() const;
55 
58  void setIs2D( bool trueOrFalse );
59 
61  bool is2D() const;
62 
64  void setModelSet( int modelSet );
65 
67  int modelSet() const;
68 
70  void setKeyMap( const std::string& keyMap );
71 
73  const std::string& keyMap() const;
74 
76 
77  const std::string& sensor() const;
78  void setSensor(const std::string& sensor);
80 
82 
83  int gainPrecision() const;
84  void setGainPrecision( int amt );
86 
88 
89  int orbitSpeedGain() const;
90  void setOrbitSpeedGain( int gain );
92 
94 
95  int linearScaledSpeedGain() const;
96  void setLinearScaledSpeedGain( int gain );
98 
100 
101  int linearUnscaledSpeedGain() const;
102  void setLinearUnscaledSpeedGain( int gain );
104 
106 
107  int rotationSpeedGain() const;
108  void setRotationSpeedGain( int gain );
110 
112 
113  double modelScaleFactor() const;
114  void setModelScaleFactor( double modelScaleFactor );
116 
118 
119  unsigned modelScaleType() const;
120  void setModelScaleType( unsigned modelScaleFactor );
122 
124 
125  double maxModelScaleFactor() const;
126  void setMaxModelScaleFactor( double maxModelScaleFactor );
128 
130 
131  void setObserverSetting( std::string key, bool enabled );
132  bool observerSetting( std::string key ) const;
134 
135  const ObserverSettingsMap& observerSettingsMap() const;
136 
137 
138  protected:
139  friend class boost::serialization::access;
140 
141  template <typename Archive>
142  void serialize(Archive& ar, unsigned int version)
143  {
144  ar & BOOST_SERIALIZATION_NVP(myModeKey);
145  ar & BOOST_SERIALIZATION_NVP(myName);
146  ar & BOOST_SERIALIZATION_NVP(myIs2D);
147  ar & BOOST_SERIALIZATION_NVP(myModelSet);
148  ar & BOOST_SERIALIZATION_NVP(myKeyMap);
149  ar & BOOST_SERIALIZATION_NVP(myOrbitSpeedGain);
150  ar & BOOST_SERIALIZATION_NVP(myLinearScaledSpeedGain);
151  ar & BOOST_SERIALIZATION_NVP(myLinearUnscaledSpeedGain);
152  ar & BOOST_SERIALIZATION_NVP(myRotationSpeedGain);
153  ar & BOOST_SERIALIZATION_NVP(myGainPrecision);
154  if ( version >= 1 )
155  {
156  ar & BOOST_SERIALIZATION_NVP(myModelScaleFactor);
157  }
158  if ( version >= 2 )
159  {
160  ar & BOOST_SERIALIZATION_NVP(myModelScaleType);
161  ar & BOOST_SERIALIZATION_NVP(myMaxModelScaleFactor);
162  }
163  if ( version >= 3 )
164  {
165  ar & BOOST_SERIALIZATION_NVP(mySensor);
166  }
167  ar & BOOST_SERIALIZATION_NVP(myObserverSettingsMap);
168  }
169 
170  protected:
171  std::string myModeKey;
172  std::string myName;
173  std::string mySensor;
174  bool myIs2D;
175  std::string myKeyMap;
186  };
187 }
188 

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)