SoDaRadio-5.0.3-master:8901fb5
|
Generic Control class to activate T/R switching, band switching, and other control functions. More...
#include <TRControl.hxx>
Public Member Functions | |
TRControl () | |
virtual bool | setTXOn ()=0 |
activate external controls to enable transmit mode. More... | |
virtual bool | setTXOff ()=0 |
activate external controls to disable transmit mode. More... | |
virtual bool | getTX ()=0 |
report state of transmit-enable. More... | |
virtual bool | setBand (unsigned int band, bool state) |
turn on/off signal path for selected band note that multiple bands can be enabled at one time(!) More... | |
virtual bool | getBand (unsigned int band) |
query state of signal path for selected band More... | |
virtual bool | setServo (unsigned int servo_sel, double val) |
set state of selected servo More... | |
Static Public Member Functions | |
static TRControl * | makeTRControl (uhd::usrp::multi_usrp::sptr usrp, int mboard=0) |
make the appropriate TR control widget given a pointer to a USRP device. More... | |
Generic Control class to activate T/R switching, band switching, and other control functions.
On some units, this may be provided by GPIO pins on the USRP itself. (Systems with WBX modules and later model B2xx units have internal GPIO pins.) Others (like my own N200 with a UBX module) need an external widget of some sort.
All members of the control class provide the basic features, but may choose to treat them as no-ops.
However, ALL subclasses of Control.hxx must do something useful for setTXOn(), setTXOff(), getTX().
Definition at line 51 of file TRControl.hxx.
|
inline |
Definition at line 53 of file TRControl.hxx.
References getTX(), setTXOff(), and setTXOn().
|
inlinevirtual |
query state of signal path for selected band
band | band selector (typically index from 1...7) |
Reimplemented in SoDa::B200Control, and SoDa::N200Control.
Definition at line 90 of file TRControl.hxx.
|
pure virtual |
report state of transmit-enable.
Implemented in SoDa::NoopControl, SoDa::B200Control, and SoDa::N200Control.
Referenced by TRControl().
|
static |
make the appropriate TR control widget given a pointer to a USRP device.
This will be connected to the selected mboard.
Definition at line 45 of file TRControl.cxx.
References SoDa::PropTree::getProperty(), and SoDa::PropTree::getStringProp().
Referenced by main(), setServo(), and SoDa::USRPCtrl::USRPCtrl().
|
inlinevirtual |
turn on/off signal path for selected band note that multiple bands can be enabled at one time(!)
band | band selector (typically index from 1...7) |
state | true to enable band, false otherwise. |
Reimplemented in SoDa::B200Control, and SoDa::N200Control.
Definition at line 82 of file TRControl.hxx.
|
inlinevirtual |
set state of selected servo
servo_sel | – select the actuator that we're wiggling |
val | – the setting for the actuator |
Definition at line 99 of file TRControl.hxx.
References makeTRControl().
|
pure virtual |
activate external controls to disable transmit mode.
Implemented in SoDa::NoopControl, SoDa::B200Control, and SoDa::N200Control.
Referenced by main(), SoDa::USRPCtrl::setTXEna(), and TRControl().
|
pure virtual |
activate external controls to enable transmit mode.
Implemented in SoDa::NoopControl, SoDa::B200Control, and SoDa::N200Control.
Referenced by main(), SoDa::USRPCtrl::setTXEna(), and TRControl().