|
GNU Radio's CYBERRADIO Package
|
A generic VITA 49-compatible I/Q data source block (Mk3). More...
#include <vita_iq_source_mk3.h>
Public Types | |
| typedef boost::shared_ptr< vita_iq_source_mk3 > | sptr |
Public Member Functions | |
| virtual float | get_realtime_sample_rate (int output=0)=0 |
| Gets the real-time calculated sample rate for a specific output. More... | |
Static Public Member Functions | |
| static sptr | make (int vita_type=0, size_t payload_size=8192, size_t vita_header_size=0, size_t vita_tail_size=0, bool byte_swapped=false, bool iq_swapped=false, float iq_scale_factor=1.0, const std::string &host="0.0.0.0", unsigned short port=0, bool ddc_coherent=false, int num_outputs=1, bool tagged=false, bool debug=false) |
| Creates a vita_iq_source_mk3 block. More... | |
A generic VITA 49-compatible I/Q data source block (Mk3).
The vita_iq_source block outputs VITA 49 or raw I/Q data coming from an NDR-class radio. The source block listens for incoming I/Q data using UDP and dispatches it to its output port(s) as needed. This block uses multiple output ports, one per tuner, if the incoming data is in DDC-coherent mode.
This class is designed to be as flexible as possible in dealing with data streams, since each NDR-class radio varies in how it packages data streams.
The vita_iq_source block can also produce stream tags at the beginning of each received VITA 49 frame. The block generates the following stream tags, as appropriate for the radio:
| typedef boost::shared_ptr<vita_iq_source_mk3> gr::CyberRadio::vita_iq_source_mk3::sptr |
|
pure virtual |
Gets the real-time calculated sample rate for a specific output.
| output | Which output to get the sample rate for. |
Implemented in gr::CyberRadio::vita_iq_source_mk3_impl.
|
static |
Creates a vita_iq_source_mk3 block.
| vita_type | The VITA 49 enable option value. The range of valid values depends on the radio, but 0 always disables VITA 49 formatting. In that case, the data format is raw I/Q. |
| payload_size | The VITA 49 or I/Q payload size for the radio, in bytes. If VITA 49 output is disabled, then this parameter provides the total size of all raw I/Q data transmitted in a single packet. |
| vita_header_size | The VITA 49 header size for the radio, in bytes. If VITA 49 output is disabled, then this parameter is ignored. |
| vita_tail_size | The VITA 49 tail size for the radio, in bytes. If VITA 49 output is disabled, then this parameter is ignored. |
| byte_swapped | Whether the bytes in the packet are swapped (with respect to the endianness employed by the host operating system). |
| iq_swapped | Whether I and Q data in the payload are swapped. |
| iq_scale_factor | Scale factor for converting I/Q data from native sample format to complex output. |
| host | The IP address or host name to bind listening UDP ports on. Specify this as "0.0.0.0" to listen on all network interfaces. |
| port | The UDP port number to listen on. |
| ddc_coherent | Whether the incoming data is in DDC-coherent mode. |
| num_outputs | Number of outputs for coherent-mode data. If the data is not DDC-coherent, then this parameter is ignored, and the number of outputs is automatically set to 1. |
| tagged | Whether the block should produce stream tags. Defaults to False. |
| debug | Whether the block should produce debug output. Defaults to False. |