GNU Radio 3.7.1 C++ API
gr::blocks::vector_map Class Reference

Maps elements from a set of input vectors to a set of output vectors. More...

#include <vector_map.h>

Inheritance diagram for gr::blocks::vector_map:

List of all members.

Public Types

typedef boost::shared_ptr
< vector_map
sptr

Public Member Functions

virtual void set_mapping (std::vector< std::vector< std::vector< size_t > > > mapping)=0

Static Public Member Functions

static sptr make (size_t item_size, std::vector< size_t > in_vlens, std::vector< std::vector< std::vector< size_t > > > mapping)

Detailed Description

Maps elements from a set of input vectors to a set of output vectors.

If in[i] is the input vector in the i'th stream then the output vector in the j'th stream is:

out[j][k] = in[mapping[j][k][0]][mapping[j][k][1]]

That is mapping is of the form (out_stream1_mapping, out_stream2_mapping, ...) and out_stream1_mapping is of the form (element1_mapping, element2_mapping, ...) and element1_mapping is of the form (in_stream, in_element).


Member Typedef Documentation


Member Function Documentation

static sptr gr::blocks::vector_map::make ( size_t  item_size,
std::vector< size_t >  in_vlens,
std::vector< std::vector< std::vector< size_t > > >  mapping 
) [static]

Build a vector map block.

Parameters:
item_size(integer) size of vector elements
in_vlens(vector of integers) number of elements in each input vector
mapping(vector of vectors of vectors of integers) how to map elements from input to output vectors
virtual void gr::blocks::vector_map::set_mapping ( std::vector< std::vector< std::vector< size_t > > >  mapping) [pure virtual]

The documentation for this class was generated from the following file: