20#ifndef GNSS_SDR_TWO_BIT_CPX_FILE_SIGNAL_SOURCE_H
21#define GNSS_SDR_TWO_BIT_CPX_FILE_SIGNAL_SOURCE_H
25#include <gnuradio/blocks/interleaved_short_to_complex.h>
46 const std::string& role,
47 unsigned int in_streams,
48 unsigned int out_streams,
51 ~TwoBitCpxFileSignalSource() =
default;
56 gnss_shared_ptr<gr::block>
source()
const override;
57 void create_file_source_hook()
override;
58 void pre_connect_hook(gr::top_block_sptr top_block)
override;
59 void pre_disconnect_hook(gr::top_block_sptr top_block)
override;
62 unpack_byte_2bit_cpx_samples_sptr unpack_byte_;
63 gr::blocks::interleaved_short_to_complex::sptr inter_shorts_to_cpx_;
This class implements a thread-safe std::queue.
This abstract class represents an interface to configuration parameters.
FileSourceBase(ConfigurationInterface const *configuration, std::string const &role, std::string impl, Concurrent_Queue< pmt::pmt_t > *queue, std::string default_item_type="short")
Constructor.
double packetsPerSample() const override
The number of (possibly unpacked) samples in a (raw) file sample (default=1).
gnss_shared_ptr< gr::block > source() const override
Abstracted front-end source. Sub-classes may override if they create specialized chains to decode sou...
std::tuple< size_t, bool > itemTypeToSize() override
Compute the item size, from the item_type(). Subclasses may constrain types that don't make.
Header file of the base class to file-oriented signal_source GNSS blocks.
Unpacks byte samples to 2 bits complex samples. Packing Order Most Significant Nibble - Sample n Leas...