8#ifndef INCLUDED_CYBERRADIO_SNAPSHOT_VECTOR_SOURCE_IMPL_H
9#define INCLUDED_CYBERRADIO_SNAPSHOT_VECTOR_SOURCE_IMPL_H
17#include <linux/if_ether.h>
18#include <linux/if_packet.h>
19#include <netinet/ip.h>
20#include <netinet/udp.h>
21#include <net/ethernet.h>
23#include <netinet/in.h>
31#include <sys/socket.h>
36#include <boost/bind/bind.hpp>
53 std::string d_radio_type;
56 unsigned int d_block_rate;
57 unsigned int d_block_size;
62 unsigned int block_rate;
63 unsigned int block_size;
64 unsigned int packets_per_block;
66 bool d_byteSwap, d_iqSwap;
67 bool d_bswap32, d_bswap16;
68 int d_samples_per_frame;
69 bool initializing, running;
72 int stream_counter, sample_counter;
73 bool program_starting;
75 std::vector<gr_complex> sampleVector;
76 struct iovec rxVec[3];
80 int32_t thisCount,lastCount,countDiff;
81 bool d_iq_swap, d_byte_swap;
83 void (*_parseHeader)(
char *, int);
85 void set_bswap_flags(
void);
86 void set_byteSwap(
bool byteSwap);
87 void set_iqSwap(
bool iqSwap);
89 static void _parseHeaderNull(
char * hdr,
int hdr_len) {std::cout <<
"_parseHeaderNull" << std::endl;};
90 static void _parseHeaderNdr308(
char * hdr,
int hdr_len) {std::cout <<
"_parseHeaderNdr308" << std::endl;};
91 static void _parseHeaderNdr551(
char * hdr,
int hdr_len) {std::cout <<
"_parseHeaderNdr551" << std::endl;};
93 void rxControlMsg(pmt::pmt_t msg);
94 void txStatusMsg(
void);
96 void determine_radio_type(
void );
99 snapshot_vector_source_impl(
const std::string radio_type,
const std::string &ip,
unsigned int port,
unsigned int block_size,
unsigned int block_rate);
109 gr_vector_const_void_star &input_items,
110 gr_vector_void_star &output_items
int initSocket(const std::string ip, unsigned short port)
snapshot_vector_source_impl(const std::string radio_type, const std::string &ip, unsigned int port, unsigned int block_size, unsigned int block_rate)
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
~snapshot_vector_source_impl()
<+description of block+>
Definition snapshot_vector_source.h:23
Provides programming elements for controlling the CyberRadio Solutions NDR651 radio.
Definition single_pole_iir.h:31
Provides programming elements for controlling CyberRadio Solutions products.
Definition single_pole_iir.h:30