CARMA C++
Speed.h
Go to the documentation of this file.
1 #ifndef SZA_UTIL_SPEED_H
2 #define SZA_UTIL_SPEED_H
3 
11 #include "carma/szautil/ConformableQuantity.h"
12 
13 namespace sza {
14  namespace util {
15 
16  class Speed : public ConformableQuantity {
17  public:
18 
19  class CentimetersPerSec {};
20  class KilometersPerSec {};
21  class MetersPerSec {};
22 
26  Speed();
27  Speed(const CentimetersPerSec& units, double cmPerSec);
28  Speed(const MetersPerSec& units, double mPerSec);
29 
33  virtual ~Speed();
34 
38  void setCentimetersPerSec(double cmPerSec);
39  void setMetersPerSec(double mPerSec);
40  void setMilesPerHour(double mph);
41 
45  double centimetersPerSec();
46  double metersPerSec();
47  double mph();
48 
49  void initialize();
50 
51  static const unsigned secPerHour_;
52  static const double metersPerMile_;
53 
54  private:
55 
56  double cmPerSec_;
57 
58  }; // End class Speed
59 
60  } // End namespace util
61 } // End namespace sza
62 
63 
64 
65 #endif // End #ifndef SZA_UTIL_SPEED_H