VR-Forces 4.1.1 Class Documentation
DtDisplayUnitsSettingsRecord.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 
15 
16 #include <boost/serialization/access.hpp>
17 #include <boost/serialization/list.hpp>
18 #include <boost/serialization/nvp.hpp>
19 
20 #include <map>
21 
22 namespace makArchives
23 {
24 
28  {
29  public:
30 
32  enum CoordSys
33  {
41  CoordSysUserEnd = CoordSysUserStart + 128,
42  End_CoordSys
43  };
44 
46  enum TimeUnits
47  {
51  End_TimeUnits
52  };
53 
56  {
62  End_DistanceUnits
63  };
64 
67  {
74  End_VelocityUnits
75  };
76 
79  {
85  End_AccelerationUnits
86  };
87 
90  {
93  End_OrientationUnits
94  };
95 
98  {
105  End_RotVelocityUnits
106  };
107 
110 
113 
116 
119 
120  CoordSys coordSysDisplayUnit() const;
121  void setCoordSysDisplayUnit( CoordSys unit );
122  int coordSysDisplayUnitDecimals( CoordSys unit ) const;
123  void setCoordSysDisplayUnitDecimals( CoordSys unit, int decimals );
124  const std::map<CoordSys,int>& coordSysDisplayUnitDecimalsMap() const;
125 
126  DistanceUnits distanceDisplayUnit() const;
127  void setDistanceDisplayUnit( DistanceUnits unit );
128  int distanceDisplayUnitDecimals( DistanceUnits unit ) const;
129  void setDistanceDisplayUnitDecimals( DistanceUnits unit, int decimals );
130 
131  DistanceUnits altitudeDisplayUnit() const;
132  void setAltitudeDisplayUnit( DistanceUnits unit );
133  int altitudeDisplayUnitDecimals( DistanceUnits unit ) const;
134  void setAltitudeDisplayUnitDecimals( DistanceUnits unit, int decimals );
135 
136  VelocityUnits velocityDisplayUnit() const;
137  void setVelocityDisplayUnit( VelocityUnits unit );
138  int velocityDisplayUnitDecimals( VelocityUnits unit ) const;
139  void setVelocityDisplayUnitDecimals( VelocityUnits unit, int decimals );
140 
141  AccelerationUnits accelerationDisplayUnit() const;
142  void setAccelerationDisplayUnit( AccelerationUnits unit );
143  int accelerationDisplayUnitDecimals( AccelerationUnits unit ) const;
144  void setAccelerationDisplayUnitDecimals( AccelerationUnits unit, int decimals );
145 
146  OrientationUnits orientationDisplayUnit() const;
147  void setOrientationDisplayUnit( OrientationUnits unit );
148  int orientationDisplayUnitDecimals( OrientationUnits unit ) const;
149  void setOrientationDisplayUnitDecimals( OrientationUnits unit, int decimals );
150 
151  RotVelocityUnits rotationalVelocityDisplayUnit() const;
152  void setRotationalVelocityDisplayUnit( RotVelocityUnits unit );
153  int rotationalVelocityDisplayUnitDecimals( RotVelocityUnits unit ) const;
154  void setRotationalVelocityDisplayUnitDecimals( RotVelocityUnits unit, int decimals );
155 
156  protected:
157 
158  friend class boost::serialization::access;
159 
163  template<class Archive>
164  void serialize( Archive& ar, /*const*/ unsigned int version )
165  {
166  ar & BOOST_SERIALIZATION_NVP( myDisplayCoordSys );
167  ar & BOOST_SERIALIZATION_NVP( myDisplayCoordSysDecimals );
168  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitDistance );
169  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitDistanceDecimals );
170  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitAltitude );
171  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitAltitudeDecimals );
172  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitVelocity );
173  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitVelocityDecimals );
174  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitAcceleration );
175  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitAccelerationDecimals );
176  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitOrientation );
177  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitOrientationDecimals );
178  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitRotationalVelocity );
179  ar & BOOST_SERIALIZATION_NVP( myDisplayUnitRotationalVelocityDecimals );
180  }
181 
182  protected:
183 
184  typedef std::map<CoordSys,int> CoordinateSystemDecimalsMap;
185  typedef std::map<DistanceUnits,int> DistanceUnitDecimalsMap;
186  typedef std::map<DistanceUnits,int> AltitudeUnitDecimalsMap;
187  typedef std::map<VelocityUnits,int> VelocityUnitDecimalsMap;
188  typedef std::map<AccelerationUnits,int> AccelerationUnitDecimalsMap;
189  typedef std::map<OrientationUnits,int> OrientationUnitDecimalsMap;
190  typedef std::map<RotVelocityUnits,int> RotationalVelocityUnitDecimalsMap;
191 
192  protected:
193 
196 
199 
202 
205 
208 
211 
214 
215  };
216 
217 }
218 

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)