 |
GNU Radio Manual and C++ API Reference
3.9.1.0
The Free & Open Software Radio Ecosystem
|
|
Go to the documentation of this file.
11 #ifndef INCLUDED_RUNTIME_BLOCK_GATEWAY_H
12 #define INCLUDED_RUNTIME_BLOCK_GATEWAY_H
18 #include <pybind11/pybind11.h>
19 #include <pybind11/stl.h>
20 namespace py = pybind11;
39 py::handle d_py_handle;
43 typedef std::shared_ptr<block_gateway>
sptr;
53 static sptr make(
const py::object& py_handle,
54 const std::string& name,
78 std::vector<gr::tag_t> tags;
88 std::vector<gr::tag_t> tags;
96 std::vector<gr::tag_t> tags;
106 std::vector<gr::tag_t> tags;
111 virtual void set_msg_handler_pybind(
pmt::pmt_t which_port,
112 std::string& handler_name) = 0;
115 bool has_msg_handler(
pmt::pmt_t which_port)
override = 0;
void add_item_tag(unsigned int which_output, uint64_t abs_offset, const pmt::pmt_t &key, const pmt::pmt_t &value, const pmt::pmt_t &srcid=pmt::PMT_F)
Adds a new tag onto the given output buffer.
Definition: block.h:771
@ GW_BLOCK_GENERAL
Definition: block_gateway.h:30
std::vector< tag_t > _get_tags_in_range(unsigned int which_input, uint64_t abs_start, uint64_t abs_end)
Definition: block_gateway.h:76
std::vector< tag_t > _get_tags_in_window(unsigned int which_input, uint64_t rel_start, uint64_t rel_end)
Definition: block_gateway.h:94
#define GR_RUNTIME_API
Definition: gnuradio-runtime/include/gnuradio/api.h:18
@ GW_BLOCK_SYNC
Definition: block_gateway.h:31
The abstract base class for all 'terminal' processing blocks.
Definition: block.h:59
void get_tags_in_window(std::vector< tag_t > &v, unsigned int which_input, uint64_t rel_start, uint64_t rel_end)
Gets all tags within the relative window of the current call to work.
void _add_item_tag(unsigned int which_output, const tag_t &tag)
Definition: block_gateway.h:60
Definition: block_gateway.h:36
#define PMT_F
Definition: pmt.h:124
std::vector< tag_t > _get_tags_in_window(unsigned int which_input, uint64_t rel_start, uint64_t rel_end, const pmt::pmt_t &key)
Definition: block_gateway.h:101
std::shared_ptr< pmt_base > pmt_t
typedef for shared pointer (transparent reference counting).
Definition: pmt.h:84
std::shared_ptr< block_gateway > sptr
Definition: block_gateway.h:43
void get_tags_in_range(std::vector< tag_t > &v, unsigned int which_input, uint64_t abs_start, uint64_t abs_end)
Given a [start,end), returns a vector of all tags in the range.
std::vector< tag_t > _get_tags_in_range(unsigned int which_input, uint64_t abs_start, uint64_t abs_end, const pmt::pmt_t &key)
Definition: block_gateway.h:83
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:29
std::shared_ptr< io_signature > sptr
Definition: io_signature.h:34
gw_block_t
Definition: block_gateway.h:29
@ GW_BLOCK_INTERP
Definition: block_gateway.h:33
@ GW_BLOCK_DECIM
Definition: block_gateway.h:32
void _add_item_tag(unsigned int which_output, uint64_t abs_offset, const pmt::pmt_t &key, const pmt::pmt_t &value, const pmt::pmt_t &srcid=pmt::PMT_F)
Definition: block_gateway.h:65