GNU Radio's SATELLITES Package
|
Performs Doppler correction using a frequency vs. time file. More...
#include <doppler_correction.h>
Public Types | |
typedef boost::shared_ptr< doppler_correction > | sptr |
Public Member Functions | |
virtual void | set_time (double t)=0 |
Sets the current time. More... | |
virtual double | time ()=0 |
Returns the current time. More... | |
virtual double | frequency ()=0 |
Returns the current frequency in Hz. More... | |
Static Public Member Functions | |
static sptr | make (const char *filename, double samp_rate, double t0) |
Build the Doppler Correction block. More... | |
Performs Doppler correction using a frequency vs. time file.
The Doppler Correction block uses a text file listing frequency vs. time to perform Doppler correction on its input signal. The same block can be used for Doppler simulation by inverting the frequency values in the input file or by taking the complex conjugate of the output of the block.
The text file should contain lines with a timestamp and a frequency separated by a space. The timestamps are given in seconds, and typically consist of UNIX time. The t0 parameter in the block constructor gives the starting time, which is the timestamp corresponding to the first sample processed by the block. As long as the timestamps in the file and this timestamp are consistent, the block will work correctly. The frequencies are given in Hz.
The block can also use time tags such as those generated by the UHD Source block to update its internal timestamp. In this case the timestamps in the file should use UNIX seconds, since the UHD timestamps also use UNIX seconds. When using UHD time tags, the t0 parameter can be left as 0.
The Doppler correction block interpolates the frequency linearly between each pair of entries in the text file, and generates a correction with continuous phase.
typedef boost::shared_ptr<doppler_correction> gr::satellites::doppler_correction::sptr |
|
pure virtual |
Returns the current frequency in Hz.
Implemented in gr::satellites::doppler_correction_impl.
|
static |
Build the Doppler Correction block.
filename | Path of the text file describing the Doppler data |
samp_rate | Sample rate |
t0 | Timestamp corresponding to the first sample |
|
pure virtual |
Sets the current time.
t | Tiemstamp corresponding to the current time. |
Implemented in gr::satellites::doppler_correction_impl.
|
pure virtual |
Returns the current time.
Implemented in gr::satellites::doppler_correction_impl.