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

This is a tuner for the UBX, WBX, or SBX module that takes advantage of the int_n_step argument in the tune request. More...

#include <USRPTuner.hxx>

Inheritance diagram for SoDa::IntNTuner:
SoDa::USRPTuner SoDa::Debug

Public Member Functions

 IntNTuner (uhd::usrp::multi_usrp::sptr usrp, double min_separation)
 Constructor –. More...
 
bool setRXFreq (double rx_freq, double avoid_freq, uhd::tune_result_t &tune_result)
 setRXFreq set the RX 1st LO frequency. More...
 
virtual 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 tuner for the UBX, WBX, or SBX module that takes advantage of the int_n_step argument in the tune request.

Definition at line 128 of file USRPTuner.hxx.

Constructor & Destructor Documentation

◆ IntNTuner()

SoDa::IntNTuner::IntNTuner ( uhd::usrp::multi_usrp::sptr  usrp,
double  min_separation 
)
inline

Constructor –.

Parameters
usrpa pointer to the USRP object that owns this tuner
min_separationwhere possible, the LO frequency should be at least min_separation Hz from a specified "avoid_frequency."

Definition at line 134 of file USRPTuner.hxx.

References SoDa::USRPTuner::setRXFreq(), and SoDa::USRPTuner::setTXFreq().

Member Function Documentation

◆ initTuner()

void SoDa::IntNTuner::initTuner ( )
private

◆ setRXFreq()

bool SoDa::IntNTuner::setRXFreq ( double  rx_freq,
double  avoid_freq,
uhd::tune_result_t &  tune_result 
)
virtual

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
tune_resultthe response from the UHD set_xx_freq request
Returns
true on success, false on failure.

Implements SoDa::USRPTuner.

Definition at line 67 of file USRPTuner.cxx.

References SoDa::USRPTuner::checkLock(), SoDa::Debug::debugMsg(), and SoDa::USRPTuner::usrp.

◆ setTXFreq()

bool SoDa::IntNTuner::setTXFreq ( double  tx_freq,
double  avoid_freq,
uhd::tune_result_t &  tune_result 
)
virtual

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
tune_resultthe response from the UHD set_xx_freq request
Returns
true on success, false on failure.

Implements SoDa::USRPTuner.

Definition at line 93 of file USRPTuner.cxx.

References SoDa::USRPTuner::checkLock(), SoDa::Debug::debugMsg(), and SoDa::USRPTuner::usrp.


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