GNU Radio 3.6.4.2 C++ API
|
deinterleave a single input into N outputs More...
#include <deinterleave.h>
Public Types | |
typedef boost::shared_ptr < deinterleave > | sptr |
![]() | |
enum | { WORK_CALLED_PRODUCE = -2, WORK_DONE = -1 } |
Return options for the work call. More... | |
enum | tag_propagation_policy_t { TPP_DONT = 0, TPP_ALL_TO_ALL = 1, TPP_ONE_TO_ONE = 2 } |
typedef std::deque< pmt::pmt_t > | msg_queue_t |
typedef std::map< pmt::pmt_t, msg_queue_t, pmt::pmt_comperator > | msg_queue_map_t |
typedef std::map< pmt::pmt_t, msg_queue_t, pmt::pmt_comperator > ::iterator | msg_queue_map_itr |
typedef boost::function< void(pmt::pmt_t)> | msg_handler_t |
typedef std::map< pmt::pmt_t, msg_handler_t, pmt::pmt_comperator > | d_msg_handlers_t |
Static Public Member Functions | |
static sptr | make (size_t itemsize) |
Additional Inherited Members | |
![]() | |
gr_sync_decimator (void) | |
gr_sync_decimator (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature, const size_t decim_rate) | |
virtual | ~gr_sync_decimator (void) |
![]() | |
gr_sync_block (void) | |
gr_sync_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature) | |
virtual | ~gr_sync_block (void) |
int | general_work (int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
implements work -> calls work More... | |
virtual int | work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items) |
just like gr_block::general_work, only this arranges to call consume_each for you More... | |
![]() | |
gr_block (void) | |
gr_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature) | |
long | unique_id (void) const |
std::string | name (void) const |
virtual | ~gr_block (void) |
gr_io_signature_sptr | input_signature (void) const |
gr_io_signature_sptr | output_signature (void) const |
void | set_input_signature (gr_io_signature_sptr sig) |
void | set_output_signature (gr_io_signature_sptr sig) |
virtual bool | check_topology (int ninputs, int noutputs) |
virtual void | forecast (int, std::vector< int > &) |
Overload me! I am the forecast. More... | |
virtual bool | start (void) |
virtual bool | stop (void) |
void | consume_each (const int how_many_items) |
Call during work to consume items. More... | |
void | consume (const size_t i, const int how_many_items) |
void | produce (const size_t o, const int how_many_items) |
uint64_t | nitems_read (const size_t which_input=0) |
Get absolute count of all items consumed on the given input port. More... | |
uint64_t | nitems_written (const size_t which_output=0) |
Get absolute count of all items produced on the given output port. More... | |
void | add_item_tag (const size_t which_output, const gr_tag_t &tag) |
void | add_item_tag (const size_t which_output, uint64_t abs_offset, const pmt::pmt_t &key, const pmt::pmt_t &value, const pmt::pmt_t &srcid=pmt::PMT_F) |
void | get_tags_in_range (std::vector< gr_tag_t > &tags, const size_t which_input, uint64_t abs_start, uint64_t abs_end, const pmt::pmt_t &key=pmt::pmt_t()) |
void | set_alignment (const size_t alignment) |
bool | is_unaligned (void) |
size_t | fixed_rate_noutput_to_ninput (const size_t noutput_items) |
size_t | interpolation (void) const |
void | set_interpolation (const size_t) |
size_t | decimation (void) const |
void | set_decimation (const size_t) |
int | max_noutput_items (void) const |
void | set_max_noutput_items (int) |
void | unset_max_noutput_items (void) |
bool | is_set_max_noutput_items (void) const |
unsigned | history (void) const |
void | set_history (unsigned history) |
void | set_fixed_rate (const bool fixed_rate) |
bool | fixed_rate (void) const |
Get the fixed rate setting. More... | |
void | set_relative_rate (const double relative_rate) |
double | relative_rate (void) const |
Get the relative rate setting. More... | |
void | set_output_multiple (const size_t multiple) |
size_t | output_multiple (void) const |
Get the output multiple setting. More... | |
tag_propagation_policy_t | tag_propagation_policy (void) |
void | set_tag_propagation_policy (tag_propagation_policy_t p) |
void | set_max_output_buffer (long) |
void | set_max_output_buffer (int, long) |
long | max_output_buffer (size_t) |
void | set_min_output_buffer (long) |
void | set_min_output_buffer (int, long) |
long | min_output_buffer (size_t) |
std::string | symbol_name () const |
bool | alias_set () |
std::string | alias () |
pmt::pmt_t | alias_pmt () |
void | set_block_alias (std::string name) |
template<typename T > | |
void | set_msg_handler (pmt::pmt_t which_port, T msg_handler) |
void | message_port_register_in (pmt::pmt_t) |
void | message_port_register_out (pmt::pmt_t) |
void | message_port_pub (pmt::pmt_t, pmt::pmt_t) |
void | message_port_sub (pmt::pmt_t, pmt::pmt_t) |
void | message_port_unsub (pmt::pmt_t, pmt::pmt_t) |
virtual bool | message_port_is_hier (pmt::pmt_t port_id) |
virtual bool | message_port_is_hier_in (pmt::pmt_t port_id) |
virtual bool | message_port_is_hier_out (pmt::pmt_t port_id) |
pmt::pmt_t | message_ports_in () |
Get input message port names. More... | |
pmt::pmt_t | message_ports_out () |
Get output message port names. More... | |
bool | empty_p (pmt::pmt_t which_port) |
is the queue empty? More... | |
bool | empty_p () |
void | insert_tail (pmt::pmt_t, pmt::pmt_t) |
pmt::pmt_t | delete_head_nowait (pmt::pmt_t) |
pmt::pmt_t | delete_head_blocking (pmt::pmt_t) |
msg_queue_t::iterator | get_iterator (pmt::pmt_t which_port) |
void | erase_msg (pmt::pmt_t which_port, msg_queue_t::iterator it) |
virtual bool | has_msg_port (pmt::pmt_t which_port) |
bool | has_msg_handler (pmt::pmt_t which_port) |
Tests if there is a handler attached to port which_port . More... | |
virtual void | dispatch_msg (pmt::pmt_t which_port, pmt::pmt_t msg) |
void | set_processor_affinity (const std::vector< int > &mask) |
Set the thread's affinity to processor core n . More... | |
void | unset_processor_affinity () |
Remove processor affinity to a specific core. More... | |
std::vector< int > | processor_affinity () |
Get the current processor affinity. More... | |
void | work (const InputItems &, const OutputItems &) |
implements work -> calls general work More... | |
void | notify_topology (const size_t, const size_t) |
notifications of new topological commits More... | |
void | notify_active (void) |
start notification More... | |
void | notify_inactive (void) |
stop notification More... | |
virtual void | propagate_tags (const size_t, const gras::TagIter &) |
implements tag_propagation_policy() More... | |
void | _update_input_reserve (void) |
gras::BufferQueueSptr | input_buffer_allocator (const size_t, const gras::SBufferConfig &) |
gras::BufferQueueSptr | output_buffer_allocator (const size_t, const gras::SBufferConfig &) |
![]() | |
long | _unique_id |
std::string | _name |
std::string | d_symbol_alias |
std::string | d_symbol_name |
msg_queue_map_t | msg_queue |
pmt::pmt_t | message_subscribers |
d_msg_handlers_t | d_msg_handlers |
gruel::mutex | d_setlock |
std::vector< int > | d_affinity |
gr_vector_int | _work_ninput_items |
gr_vector_int | _fcast_ninput_items |
size_t | _num_outputs |
ptrdiff_t | _work_io_ptr_mask |
size_t | _output_multiple_items |
double | _relative_rate |
bool | _enable_fixed_rate |
size_t | _input_history_items |
tag_propagation_policy_t | _tag_prop_policy |
size_t | _interp |
size_t | _decim |
gr_io_signature_sptr | _in_sig |
gr_io_signature_sptr | _out_sig |
deinterleave a single input into N outputs
itemsize | stream itemsize |
|
static |