SoDaRadio-5.0.3-master:8901fb5
Public Member Functions | Private Member Functions | List of all members
SoDa::SimpleTuner Class Reference

This is a simple front end tuner. More...

#include <USRPTuner.hxx>

Inheritance diagram for SoDa::SimpleTuner:
SoDa::USRPTuner SoDa::Debug

Public Member Functions

 SimpleTuner (uhd::usrp::multi_usrp::sptr usrp)
 Constructor –. More...
 
bool setRXFreq (double rx_freq, double avoid_freq, uhd::tune_result_t &tune_result)
 setRXFreq set the RX 1st LO frequency. More...
 
bool setTXFreq (double tx_freq, double avoid_freq, uhd::tune_result_t &tune_result)
 setTXFreq set the TX 1st LO frequency. More...
 
- Public Member Functions inherited from SoDa::USRPTuner
 USRPTuner (uhd::usrp::multi_usrp::sptr usrp, double min_separation, std::string unit_name=std::string("USRPTuner"))
 Constructor –. More...
 
USRPTunermakeTuner (uhd::usrp::multi_usrp::sptr usrp, double min_separation, bool force_fracN=false, bool force_simple=false)
 Factory to build a particular subclass of USRPTuner based on the detected front-end module. More...
 
- Public Member Functions inherited from SoDa::Debug
 Debug (std::string _unit_name=std::string("UNKNOWN"))
 
 Debug (const char *_unit_name_cstr)
 
 Debug (unsigned int _debug_level, std::string _unit_name=std::string("UNKNOWN"))
 
 Debug (unsigned int _debug_level, const char *_unit_name_cstr)
 
void debugMsg (const std::string &msg, unsigned int threshold=1)
 
void debugMsg (const boost::format &fmt, unsigned int threshold=1)
 
void debugMsg (const char *msg, unsigned int threshold=1)
 
void setDebugLevel (unsigned int v)
 
unsigned int getDebugLevel ()
 

Private Member Functions

void initTuner ()
 

Additional Inherited Members

- Static Public Member Functions inherited from SoDa::Debug
static void setDefaultLevel (unsigned int v)
 
static unsigned int getDefaultLevel ()
 
static void setGlobalLevel (unsigned int v)
 
static unsigned int getGlobalLevel ()
 
- Static Public Attributes inherited from SoDa::Debug
static boost::mutex debug_msg_mutex
 
- Protected Member Functions inherited from SoDa::USRPTuner
virtual bool checkLock (uhd::tune_request_t &req, char sel, uhd::tune_result_t &cur)
 is the identified (rx or tx) front-end LO locked? If not, set the tuning frequency to "the right thing" More...
 
- Protected Member Functions inherited from SoDa::Debug
std::string curDateTime ()
 
- Protected Attributes inherited from SoDa::USRPTuner
double min_separation
 
uhd::usrp::multi_usrp::sptr usrp
 
bool has_lock_detect
 
- Protected Attributes inherited from SoDa::Debug
std::string unit_name
 the name of the unit reporting status More...
 
unsigned int debug_level
 the debug level (threshold) for messages More...
 
- Static Protected Attributes inherited from SoDa::Debug
static unsigned int default_debug_level = 0
 
static unsigned int global_debug_level = 0
 

Detailed Description

This is a simple front end tuner.

It should work with all front-ends and configurations, even the LFTX/LFRX and BASICTX/RX which don't have front-end oscillators at all. WBX or SBX modules

Definition at line 174 of file USRPTuner.hxx.

Constructor & Destructor Documentation

◆ SimpleTuner()

SoDa::SimpleTuner::SimpleTuner ( uhd::usrp::multi_usrp::sptr  usrp)
inline

Constructor –.

Parameters
usrpa pointer to the USRP object that owns this tuner

Definition at line 178 of file USRPTuner.hxx.

Member Function Documentation

◆ initTuner()

void SoDa::SimpleTuner::initTuner ( )
inlineprivate

Definition at line 219 of file USRPTuner.hxx.

◆ setRXFreq()

bool SoDa::SimpleTuner::setRXFreq ( double  rx_freq,
double  avoid_freq,
uhd::tune_result_t &  tune_result 
)
inlinevirtual

setRXFreq set the RX 1st LO frequency.

Where possible, the chosen frequency should be separated from the avoid_freq by the amount specified when we created this tuning object.

Parameters
rx_freqthe target frequency of interest
avoid_freqthe frequency that we must avoid by at least min_sep (ignored)
tune_resultthe response from the UHD set_xx_freq request
Returns
true on success, false on failure.

Implements SoDa::USRPTuner.

Definition at line 193 of file USRPTuner.hxx.

References SoDa::USRPTuner::usrp.

◆ setTXFreq()

bool SoDa::SimpleTuner::setTXFreq ( double  tx_freq,
double  avoid_freq,
uhd::tune_result_t &  tune_result 
)
inlinevirtual

setTXFreq set the TX 1st LO frequency.

Where possible, the chosen frequency should be separated from the avoid_freq by the amount specified when we created this tuning object.

Parameters
tx_freqthe target frequency of interest
avoid_freqthe frequency that we must avoid by at least min_sep (ignored)
tune_resultthe response from the UHD set_xx_freq request
Returns
true on success, false on failure.

Implements SoDa::USRPTuner.

Definition at line 210 of file USRPTuner.hxx.

References SoDa::USRPTuner::usrp.


The documentation for this class was generated from the following file: