1 #ifndef SZA_ANTENNA_CANBUS_IFMOD_H
2 #define SZA_ANTENNA_CANBUS_IFMOD_H
14 #include "carma/szautil/Rx.h"
27 class IFMod :
public CanDevice {
35 std::string boardName,
47 std::vector<carma::canbus::Message>
48 selectBand(sza::util::Rx::Id switchPos,
bool send=
true);
55 std::vector<carma::canbus::Message>
56 setAtten(
float atten,
bool send=
true);
58 std::vector<carma::canbus::Message>
59 setAtten(sza::util::Attenuation atten,
bool send=
true);
61 std::vector<carma::canbus::Message>
62 setAtten(
float input,
float output,
bool send=
true);
69 std::vector<carma::canbus::Message>
70 setLevel(
float level,
bool send=
true);
75 std::vector<carma::canbus::Message>
76 setInputAtten(
float inputLevel,
bool send=
true);
78 std::vector<carma::canbus::Message>
79 setOutputAtten(
float outputLevel,
bool send=
true);
85 void registerRequest(
unsigned seq);
91 RegMapBlock* ifTotalPowerReg_;
92 RegMapBlock* pamTemperatureReg_;
93 RegMapBlock* totalAttenReg_;
94 RegMapBlock* pamStatusReg_;
95 RegMapBlock* ifSwitchStateReg_;
96 RegMapBlock* laserStatusReg_;
97 RegMapBlock* laserPowerReg_;
98 RegMapBlock* laserRegErrorReg_;
99 RegMapBlock* inputAttenReg_;
100 RegMapBlock* outputAttenReg_;
101 RegMapBlock* laserIdReg_;
104 float pamTemperature_;
107 unsigned char pamStatus_;
108 unsigned char ifSwitchState_;
109 unsigned char laserStatus_;
112 float laserRegError_;
117 unsigned char laserId_[8];
119 float lastInputAtten_;
120 float lastOutputAtten_;
141 #ifndef CARMA_MODULES
146 enum halfSecMonitors {
147 MONITOR_PACKET_1 = 0x110,
148 MONITOR_PACKET_2 = 0x111,
149 MONITOR_PACKET_3 = 0x112,
150 MONITOR_PACKET_4 = 0x113,
151 MONITOR_PACKET_5 = 0x114,
158 std::map<carma::canbus::msgType, std::string>
159 getHalfSecMonitors()
const;
166 void processBlankingFrameMonitor1(std::vector<carma::canbus::byteType>& data,
bool isSim);
171 void processBlankingFrameMonitor2(std::vector<carma::canbus::byteType>& data,
bool isSim);
176 void processBlankingFrameMonitor3(std::vector<carma::canbus::byteType>& data,
bool isSim);
181 void processBlankingFrameMonitor4(std::vector<carma::canbus::byteType>& data,
bool isSim);
187 void processBlankingFrameMonitor5(std::vector<carma::canbus::byteType>& data,
bool isSim);
193 enum statusMessages {
194 STATUS_MSG_1 = 0x130,
195 STATUS_MSG_2 = 0x131,
201 virtual std::map<carma::canbus::msgType, std::string>
202 getStatusMessages()
const;
206 void processStatusMessage1(
bool isSim);
207 void processStatusMessage2(
bool isSim);
217 enum engineeringCommands
219 ENGCMD_SELECT_BAND = 0x080,
220 ENGCMD_SET_IF_TOTAL_ATTEN = 0x081,
221 ENGCMD_SET_IF_LEVEL = 0x082,
222 ENGCMD_SET_IF_INPUT_ATTEN = 0x083,
223 ENGCMD_SET_IF_OUTPUT_ATTEN = 0x084,
225 ENGCMD_SET_IF_INOUT_ATTEN = 0x103,
226 ENGCMD_QUERY_ATTEN_VS_FREQ = 0x105
229 enum engineeringCommands
231 ENGCMD_SELECT_BAND = 0x100,
232 ENGCMD_SET_IF_TOTAL_ATTEN = 0x101,
233 ENGCMD_SET_IF_LEVEL = 0x102,
234 ENGCMD_SET_IF_INOUT_ATTEN = 0x103,
235 ENGCMD_QUERY_ATTEN_VS_FREQ = 0x105
247 #endif // End #ifndef SZA_ANTENNA_CANBUS_IFMOD_H
Started: Fri Nov 21 15:46:44 UTC 2003.
AntennaRx class will handle all receiver functions.
unsigned short nodeType
Carma Node Type id type.
An instance of this class is created by AntennaMaster and passed to the constructors of other tasks...
Tagged: Sun Mar 27 12:36:42 PST 2005.