00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
#include <GrSink.h>
00024
00025
class usrp_tx;
00026
00030 class GrUsrpSink :
public GrSink
00031 {
00032
private:
00033 int d_ninputs;
00034 usrp_tx *
d_usrp;
00035
00036
public:
00037
GrUsrpSink (
int which_board,
00038
unsigned int usrp_tx_config,
00039
unsigned int interp_rate);
00040
~GrUsrpSink ();
00041
00045
static GrUsrpSink *
make (
int which_board,
00046
unsigned int usrp_tx_config,
00047
unsigned interp_rate);
00048
00049 virtual const char *
name () {
return "GrUsrpSink"; }
00050
00051
virtual int work3 (
VrSampleRange output,
00052
VrSampleRange inputs[],
void *i[]);
00053
00054
void initialize ();
00055
00056
bool set_interp_rate (
unsigned int rate);
00057
bool set_tx_freq (
int channel,
double freq);
00058
bool set_ext_clk_div (
unsigned int div);
00059
00060
bool _set_interp_reg (
unsigned int regval);
00061
00062
00063
00064
double get_oscillator_freq () const;
00065
unsigned int get_interp_rate () const;
00066
double get_tx_freq (
int channel) const;
00067
unsigned int get_ext_clk_div () const;
00068 };