CARMA C++
Varactor.h
Go to the documentation of this file.
1 
11 #ifndef CARMA_ANTENNA_COMMON_VARACTOR_H
12 #define CARMA_ANTENNA_COMMON_VARACTOR_H
13 
15 
16 namespace carma {
17 
18 namespace monitor {
19  class StateMonitorPointEnum;
20  class VaractorModule;
21  class Xac;
22 } // namespace monitor
23 
24 namespace antenna {
25 namespace common {
26 
31 public:
32 
43  carma::monitor::VaractorModule & varMon,
44  carma::monitor::Xac & xacMon,
45  carma::monitor::StateMonitorPointEnum & stateMon );
46 
50  virtual ~Varactor();
51 
59 
67 
77  bool sim);
78 
85 
90  void updateFrameData();
91 
96  void enableGunn( bool on ) const;
97 
102  void enableSweep( bool on ) const;
103 
108  void enableIFmonitor( bool on ) const;
109 
114  void setLoopGainResistance( unsigned short resistanceInOhms ) const;
115 
123  void setDummyLoFreq( float freqInGHz );
124 
125 protected:
126 
127  // Nothing
128 
129 private:
130 
131  Varactor( const Varactor & ); // No copy
132  Varactor & operator=( const Varactor & ); // No copy
133 
134  void processBlankingFramePacket1(::carma::canbus::DataVector & data);
135  void processBlankingFramePacket2(::carma::canbus::DataVector & data);
136  void processBlankingFramePacket3(::carma::canbus::DataVector & data);
137  void processBlankingFramePacket4(::carma::canbus::DataVector & data);
138  void processBlankingFramePacket5(::carma::canbus::DataVector & data);
139 
140  ::carma::canbus::Message simBlankingFramePacket1();
141  ::carma::canbus::Message simBlankingFramePacket2();
142  ::carma::canbus::Message simBlankingFramePacket3();
143  ::carma::canbus::Message simBlankingFramePacket4();
144  ::carma::canbus::Message simBlankingFramePacket5();
145 
146  ::carma::monitor::StateMonitorPointEnum & state_;
147  ::carma::monitor::VaractorModule & varMon_;
148  ::carma::monitor::Xac & xacMon_;
149  float freqInGHz_;
150 
151 }; // Class Varactor
152 }}} // carma::antenna::common
153 #endif
::std::map< ::carma::canbus::msgType,::std::string > MsgIdInfoMap
Alias for an ::std::map containing a string description of a message id, keyed by the described carma...
Definition: Device.h:30
Class to encapsulate a CAN message.
Definition: Message.h:21
virtual ~Varactor()
Destructor.
void processMsg(::carma::canbus::msgType mid,::carma::canbus::DataVector &data, bool sim)
Process a CAN message addressed to this module.
XacDevice canbus::device class implementation.
Definition: XacDevice.h:37
void enableGunn(bool on) const
Turn the gunn oscillator on or off.
void setDummyLoFreq(float freqInGHz)
Set dummy LO Frequency.
Varactor(carma::canbus::nodeType node, carma::canbus::CanOutput &co, carma::monitor::VaractorModule &varMon, carma::monitor::Xac &xacMon, carma::monitor::StateMonitorPointEnum &stateMon)
Constructor.
unsigned short nodeType
Carma Node Type id type.
Definition: Types.h:66
void setLoopGainResistance(unsigned short resistanceInOhms) const
Set the PLL loop gain resistance (controlled by a digital pot).
void updateFrameData()
Update Frame Data.
::std::vector< ::carma::canbus::byteType > DataVector
Alias for CAN data.
Definition: Types.h:72
void enableSweep(bool on) const
Turn the sweep on or off.
carma::canbus::Message simulateMsg(carma::canbus::msgType mid)
Produce a simulated CAN message for a given msgType.
carma::canbus::devices::XacDevice class declaration.
unsigned short msgType
Carma Message id type.
Definition: Types.h:69
CanOutput interface.
Definition: CanOutput.h:26
carma::canbus::MsgIdInfoMap getHalfSecMonitors() const
Retrieve a map of this devices half second monitor points.
void enableIFmonitor(bool on) const
Turn the IF monitor on or off.
carma::canbus::MsgIdInfoMap getSlowMonitors() const
Retrieve a map of this devices slow (5 second) monitor points.
Varactor CAN device class.
Definition: Varactor.h:30