57 #ifndef GNSS_SDR_UNPACK_2BIT_SAMPLES_H 58 #define GNSS_SDR_UNPACK_2BIT_SAMPLES_H 60 #include <gnuradio/sync_interpolator.h> 63 #if GNURADIO_USES_STD_POINTERS 66 #include <boost/shared_ptr.hpp> 71 #if GNURADIO_USES_STD_POINTERS 72 using unpack_2bit_samples_sptr = std::shared_ptr<unpack_2bit_samples>;
74 using unpack_2bit_samples_sptr = boost::shared_ptr<unpack_2bit_samples>;
77 unpack_2bit_samples_sptr make_unpack_2bit_samples(
78 bool big_endian_bytes,
80 bool big_endian_items,
81 bool reverse_interleaving =
false);
95 bool big_endian_items,
96 bool reverse_interleaving);
98 int work(
int noutput_items,
99 gr_vector_const_void_star &input_items,
100 gr_vector_void_star &output_items);
103 friend unpack_2bit_samples_sptr make_unpack_2bit_samples_sptr(
104 bool big_endian_bytes,
106 bool big_endian_items,
107 bool reverse_interleaving);
109 std::vector<int8_t> work_buffer_;
111 bool big_endian_bytes_;
112 bool big_endian_items_;
113 bool swap_endian_items_;
114 bool swap_endian_bytes_;
115 bool reverse_interleaving_;
118 #endif // GNSS_SDR_UNPACK_2BIT_SAMPLES_H This class takes 2 bit samples that have been packed into bytes or shorts as input and generates a by...