CARMA C++
Unit.h
Go to the documentation of this file.
1 // $Id: Unit.h,v 1.1 2010/12/13 21:06:33 eml Exp $
2 
3 #ifndef SZA_UTIL_UNIT_H
4 #define SZA_UTIL_UNIT_H
5 
15 #include <string>
16 #include <vector>
17 
18 namespace sza {
19  namespace util {
20 
21  // This class is intended as a base-class for all unit classes
22  // defined in inheritors of ConformableQuantity class
23 
24  class Unit {
25  public:
26 
30  Unit();
31 
35  virtual ~Unit();
36 
37  // Return true if the passed name is a recognized name for this
38  // unit
39 
40  bool isThisUnit(std::string unitName);
41 
42  protected:
43 
44  // A collection of valid name for this unit
45 
46  std::vector<std::string> names_;
47 
48  // Add a name to this list
49 
50  void addName(std::string name);
51 
52  virtual void addNames();
53 
54  }; // End class Unit
55 
56  } // End namespace util
57 } // End namespace sza
58 
59 
60 
61 #endif // End #ifndef SZA_UTIL_UNIT_H