12 #ifndef INCLUDED_IO_SIGNATURE_H 13 #define INCLUDED_IO_SIGNATURE_H 16 #include <spdlog/fmt/fmt.h> 17 #include <string_view> 23 #ifdef FORCE_SINGLE_MAPPED 40 std::vector<size_t> d_sizeof_stream_item;
45 const std::vector<size_t>& sizeof_stream_items,
49 typedef std::shared_ptr<io_signature>
sptr;
51 #ifdef FORCE_SINGLE_MAPPED 57 static constexpr
int IO_INFINITE = -1;
71 static sptr make(
int min_streams,
73 int sizeof_stream_item,
88 static sptr make(
int min_streams,
90 const std::vector<size_t>& sizeof_stream_items,
108 static sptr make2(
int min_streams,
110 int sizeof_stream_item1,
111 int sizeof_stream_item2,
132 static sptr make3(
int min_streams,
134 int sizeof_stream_item1,
135 int sizeof_stream_item2,
136 int sizeof_stream_item3,
155 makev(
int min_streams,
int max_streams,
const std::vector<int>& sizeof_stream_items);
172 static sptr makev(
int min_streams,
174 const std::vector<int>& sizeof_stream_items,
179 int sizeof_stream_item(
int index)
const;
181 std::vector<int> sizeof_stream_items()
const;
182 buffer_type stream_buffer_type(
size_t index)
const;
187 bool operator==(
const io_signature& lhs,
const io_signature& rhs);
193 format_context& ctx)
const;
Definition: host_buffer.h:18
std::shared_ptr< io_signature > sptr
Definition: io_signature.h:49
Single writer, multiple reader fifo.
Definition: buffer_double_mapped.h:28
int max_streams() const
Definition: io_signature.h:178
#define GR_RUNTIME_API
Definition: gnuradio-runtime/include/gnuradio/api.h:18
int min_streams() const
Definition: io_signature.h:177
GNU Radio logging wrapper.
Definition: basic_block.h:29
Template used to create buffer types. Note that the factory_class parameter must contain a static fun...
Definition: buffer_type.h:94
i/o signature for input and output ports.
Definition: io_signature.h:36
bool operator==(const io_signature &lhs, const io_signature &rhs)
Base class for describing a buffer's type.
Definition: buffer_type.h:27
std::vector< std::reference_wrapper< const buffer_type_base > > gr_vector_buffer_type
Definition: buffer_type.h:86
enables PMTs to be formatted with fmt
Definition: io_signature.h:191