11#ifndef INCLUDE_BLOCKINTERLEAVER_H
12#define INCLUDE_BLOCKINTERLEAVER_H
38 typedef std::shared_ptr<blockinterleaver_xx<T>>
sptr;
48 static sptr make(std::vector<size_t> interleaver_indices,
50 bool is_packed =
false);
Fully parameterizable block interleaver.
Definition: blockinterleaver_xx.h:36
virtual std::vector< size_t > interleaver_indices() const =0
Return interleaver indices.
virtual std::vector< size_t > deinterleaver_indices() const =0
Return derived de-interleaver indices.
static sptr make(std::vector< size_t > interleaver_indices, bool interleave_mode, bool is_packed=false)
Build a blockinterleaver block.
virtual bool is_packed() const =0
Return true if packed bytes are expected.
virtual bool interleaver_mode() const =0
Return true if in interleaver mode, otherwise false.
std::shared_ptr< blockinterleaver_xx< T > > sptr
Definition: blockinterleaver_xx.h:38
synchronous 1:1 input to output with history
Definition: sync_block.h:26
#define BLOCKS_API
Definition: gr-blocks/include/gnuradio/blocks/api.h:18
blockinterleaver_xx< uint8_t > blockinterleaver_bb
Definition: blockinterleaver_xx.h:73
blockinterleaver_xx< gr_complex > blockinterleaver_cc
Definition: blockinterleaver_xx.h:74
blockinterleaver_xx< int32_t > blockinterleaver_ii
Definition: blockinterleaver_xx.h:76
blockinterleaver_xx< int16_t > blockinterleaver_ss
Definition: blockinterleaver_xx.h:77
blockinterleaver_xx< float > blockinterleaver_ff
Definition: blockinterleaver_xx.h:75
GNU Radio logging wrapper.
Definition: basic_block.h:29