VR-Forces 4.1.1 Class Documentation
DtEnvironmentRecord.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
14 #include <vector>
15 
16 namespace makArchives
17 {
22  {
23  public:
24 
25  typedef std::vector<DtCloudLayerRecord> CloudLayerRecordList;
26 
29 
32 
35 
38 
40  void swap(DtEnvironmentRecord& other);
41 
42  void setAirTurbidity(float turbidity);
43  float airTurbidity() const;
44 
45  void setVisibleDistance(float distance);
46  float visibleDistance() const;
47 
48  void setPrecipitationEnabled(bool enabled);
49  bool precipitationEnabled() const;
50 
51  void setPrecipitationType(const std::string& type);
52  const std::string& precipitationType() const;
53 
54  void setPrecipitationIntensity(float intensity);
55  float precipitationIntensity() const;
56 
57  CloudLayerRecordList& cloudLayers();
58  const CloudLayerRecordList& cloudLayers() const;
59 
60  void setWindSpeed(float metersPerSecond);
61  float windSpeed() const;
62 
63  void setWindDirection(float radiansFromNorth);
64  float windDirection() const;
65 
66  void setAmbientAirTemperature(float celsius);
67  float ambientAirTemperature() const;
68 
69  void setSeaState(int beaufortScale);
70  int seaState() const;
71 
72  void setSeaChoppiness(float chop);
73  float seaChoppiness() const;
74 
75  void setUnderwaterVisibility(float distanceInMeters);
76  float underwaterVisibility() const;
77 
78  void setAmbientWaterTemperature(float celsius);
79  float ambientWaterTemperature() const;
80 
81  void setWaterCurrentSpeed(float metersPerSecond);
82  float waterCurrentSpeed() const;
83 
84  void setWaterCurrentDirection(float radiansFromNorth);
85  float waterCurrentDirection() const;
86 
87  void setTidalOffset(float meters);
88  float tidalOffset() const;
89 
90  void setTidalDirection(bool inOut);
91  bool tidalDirection() const;
92 
93  protected:
94 
95  friend class boost::serialization::access;
96 
100  template<class Archive>
101  void serialize(Archive & ar, const unsigned int version)
102  {
103  ar & BOOST_SERIALIZATION_NVP(myAirTurbidity);
104  ar & BOOST_SERIALIZATION_NVP(myVisibilityDistance);
105  ar & BOOST_SERIALIZATION_NVP(myPrecipitationEnabledFlag);
106  ar & BOOST_SERIALIZATION_NVP(myPrecipitationType);
107  ar & BOOST_SERIALIZATION_NVP(myPrecipitationIntensity);
108  ar & BOOST_SERIALIZATION_NVP(myCloudLayers);
109 
110  if(version >= 1)
111  {
112  ar & BOOST_SERIALIZATION_NVP(myWindSpeed);
113  ar & BOOST_SERIALIZATION_NVP(myWindDirection);
114  ar & BOOST_SERIALIZATION_NVP(myAmbientAirTemperature);
115  ar & BOOST_SERIALIZATION_NVP(mySeaState);
116  ar & BOOST_SERIALIZATION_NVP(mySeaChoppiness);
117  ar & BOOST_SERIALIZATION_NVP(myUnderwaterVisibility);
118  ar & BOOST_SERIALIZATION_NVP(myAmbientWaterTemperature);
119  ar & BOOST_SERIALIZATION_NVP(myWaterCurrentSpeed);
120  ar & BOOST_SERIALIZATION_NVP(myWaterCurrentDirection);
121  ar & BOOST_SERIALIZATION_NVP(myTidalOffset);
122  ar & BOOST_SERIALIZATION_NVP(myTidalDirection);
123  }
124  }
125 
129  std::string myPrecipitationType;
132  float myWindSpeed;
135 
144  };
145 }
146 

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)