CARMA C++
PolarEncoderPos.h
Go to the documentation of this file.
1 #ifndef POLARENCODERPOS_H
2 #define POLARENCODERPOS_H
3 
11 namespace sza {
12  namespace antenna {
13  namespace control {
14 
15 
21 
22  public:
23 
28  enum Position {
29  LEFT=1, // The value to write to the polarization state
30  // register if the encoder position is LEFT
31  RIGHT=2, // The value to write to the polarization state
32  // register if the encoder position is RIGHT
33  UNKNOWN=4, // The value to write to the state register if
34  // the encoder position is unknown
35  UNSET=9999, // The value the tabulated positions will have
36  // before they are initialized by the user
37  RIGHT_REQ=2048, // A special requested value, which will
38  // signify that we want the RIGHT encoder
39  // position
40  LEFT_REQ=4096 // A special requested value, which will
41  // signify that we want the LEFT encoder
42  // position
43  };
44 
48  unsigned right_;
52  unsigned left_;
53 
58 
59  }; // End class PolarEncoderPos
60 
61  // The threshold for an acceptable polarization state. ie, if
62  // the phase shifter encoder position is right +-
63  // PSHIFT_ENC_THRESHOLD, we will call it right.
64 
65 #define PSHIFT_ENC_THRESHOLD 1
66 
67 
68  }; // End namespace control
69  }; // End namespace antenna
70 }; // End namespace sza
71 
72 #endif // End #ifndef
A class to manage encoder positions corresponding to different polarization states.
unsigned left_
The position corresponding to L circular polarization.
unsigned right_
The position corresponding to R circular polarization.
Position
Enumerate special encoder positions which will signify known polarization states. ...