CARMA C++
IFAtten.h
Go to the documentation of this file.
1 #ifndef SZA_UTIL_IFATTEN_H
2 #define SZA_UTIL_IFATTEN_H
3 
11 #include "carma/szautil/AntNum.h"
13 
14 namespace sza {
15  namespace util {
16 
17  // A class for handling antenna IF attenuation settings
18 
19  class IFAtten {
20  public:
21 
22  enum Type {
23  ATTEN_NONE = 0x0,
24  ATTEN_INPUT = 0x2,
25  ATTEN_OUTPUT = 0x4,
26  ATTEN_TOTAL = 0x8,
27  };
28 
32  static const double attenMax_;
33 
37  static bool isValidAtten(double atten)
38  {
39  return !(atten < 0 || atten > attenMax_);
40  }
41 
42  static void setDefaultInputAttenuation(AntNum::Id antId, float atten);
43  static void setDefaultOutputAttenuation(AntNum::Id antId, float atten);
44  static void setDefaultTotalAttenuation(AntNum::Id antId, float atten);
45 
46  static float getDefaultInputAttenuation(AntNum::Id antId);
47  static float getDefaultOutputAttenuation(AntNum::Id antId);
48  static float getDefaultTotalAttenuation(AntNum::Id antId);
49 
50  private:
51 
52  static float inputAttens_[AntNum::NANT];
53  static float outputAttens_[AntNum::NANT];
54  static float totalAttens_[AntNum::NANT];
55 
56  }; // End class IFAtten
57 
58  } // End namespace util
59 } // End namespace sza
60 
61 
62 
63 #endif // End #ifndef SZA_UTIL_IFATTEN_H
Tagged: Fri Nov 14 12:39:31 UTC 2003.
Id
Enumerate known receivers.
Definition: AntNum.h:35
Tagged: Sun Mar 27 12:36:42 PST 2005.