GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
gr::io_signature Class Reference

i/o signature for input and output ports. More...

#include <gnuradio/io_signature.h>

Public Types

typedef std::shared_ptr< io_signaturesptr
 

Public Member Functions

 ~io_signature ()
 
int min_streams () const
 
int max_streams () const
 
int sizeof_stream_item (int index) const
 
std::vector< int > sizeof_stream_items () const
 
buffer_type stream_buffer_type (size_t index) const
 
gr_vector_buffer_type stream_buffer_types () const
 

Static Public Member Functions

static sptr make (int min_streams, int max_streams, int sizeof_stream_item, buffer_type buftype=buffer_double_mapped::type)
 Create an i/o signature. More...
 
static sptr make2 (int min_streams, int max_streams, int sizeof_stream_item1, int sizeof_stream_item2, buffer_type buftype1=buffer_double_mapped::type, buffer_type buftype2=buffer_double_mapped::type)
 Create an i/o signature. More...
 
static sptr make3 (int min_streams, int max_streams, int sizeof_stream_item1, int sizeof_stream_item2, int sizeof_stream_item3, buffer_type buftype1=buffer_double_mapped::type, buffer_type buftype2=buffer_double_mapped::type, buffer_type buftype3=buffer_double_mapped::type)
 Create an i/o signature. More...
 
static sptr makev (int min_streams, int max_streams, const std::vector< int > &sizeof_stream_items)
 Create an i/o signature. More...
 
static sptr makev (int min_streams, int max_streams, const std::vector< int > &sizeof_stream_items, gr_vector_buffer_type buftypes)
 Create an i/o signature. More...
 

Static Public Attributes

static constexpr int IO_INFINITE = -1
 

Detailed Description

i/o signature for input and output ports.

misc

Member Typedef Documentation

◆ sptr

typedef std::shared_ptr<io_signature> gr::io_signature::sptr

Constructor & Destructor Documentation

◆ ~io_signature()

gr::io_signature::~io_signature ( )

Member Function Documentation

◆ make2()

static sptr gr::io_signature::make2 ( int  min_streams,
int  max_streams,
int  sizeof_stream_item1,
int  sizeof_stream_item2,
buffer_type  buftype1 = buffer_double_mapped::type,
buffer_type  buftype2 = buffer_double_mapped::type 
)
static

Create an i/o signature.

Parameters
min_streamsspecify minimum number of streams (>= 0)
max_streamsspecify maximum number of streams (>= min_streams or -1 -> infinite)
sizeof_stream_item1specify the size of the items in the first stream
sizeof_stream_item2specify the size of the items in the second and subsequent streams
buftype1type of buffers the first stream should use (defaults to standard host double mapped buffer)
buftype2type of buffers the second and subsequent streams should use (defaults to standard host double mapped buffer)

◆ make3()

static sptr gr::io_signature::make3 ( int  min_streams,
int  max_streams,
int  sizeof_stream_item1,
int  sizeof_stream_item2,
int  sizeof_stream_item3,
buffer_type  buftype1 = buffer_double_mapped::type,
buffer_type  buftype2 = buffer_double_mapped::type,
buffer_type  buftype3 = buffer_double_mapped::type 
)
static

Create an i/o signature.

Parameters
min_streamsspecify minimum number of streams (>= 0)
max_streamsspecify maximum number of streams (>= min_streams or -1 -> infinite)
sizeof_stream_item1specify the size of the items in the first stream
sizeof_stream_item2specify the size of the items in the second stream
sizeof_stream_item3specify the size of the items in the third and subsequent streams
buftype1type of buffers the first stream should use (defaults to standard host double mapped buffer)
buftype2type of buffers the second stream should use (defaults to standard host double mapped buffer)
buftype3type of buffers the third and subsequent streams should use (defaults to standard host double mapped buffer)

◆ makev() [1/2]

static sptr gr::io_signature::makev ( int  min_streams,
int  max_streams,
const std::vector< int > &  sizeof_stream_items 
)
static

Create an i/o signature.

Parameters
min_streamsspecify minimum number of streams (>= 0)
max_streamsspecify maximum number of streams (>= min_streams or -1 -> infinite)
sizeof_stream_itemsspecify the size of the items in the streams

If there are more streams than there are entries in sizeof_stream_items, the value of the last entry in sizeof_stream_items is used for the missing values. sizeof_stream_items must contain at least 1 entry.

◆ makev() [2/2]

static sptr gr::io_signature::makev ( int  min_streams,
int  max_streams,
const std::vector< int > &  sizeof_stream_items,
gr_vector_buffer_type  buftypes 
)
static

Create an i/o signature.

Parameters
min_streamsspecify minimum number of streams (>= 0)
max_streamsspecify maximum number of streams (>= min_streams or -1 -> infinite)
sizeof_stream_itemsspecify the size of the items in the streams
buftypesthe type of buffer each stream will should use

If there are more streams than there are entries in sizeof_stream_items, the value of the last entry in sizeof_stream_items is used for the missing values. sizeof_stream_items must contain at least 1 entry.

◆ max_streams()

int gr::io_signature::max_streams ( ) const
inline

◆ min_streams()

int gr::io_signature::min_streams ( ) const
inline

◆ sizeof_stream_item()

int gr::io_signature::sizeof_stream_item ( int  index) const

◆ sizeof_stream_items()

std::vector< int > gr::io_signature::sizeof_stream_items ( ) const

◆ stream_buffer_type()

buffer_type gr::io_signature::stream_buffer_type ( size_t  index) const

◆ stream_buffer_types()

gr_vector_buffer_type gr::io_signature::stream_buffer_types ( ) const

Member Data Documentation

◆ IO_INFINITE

constexpr int gr::io_signature::IO_INFINITE = -1
staticconstexpr

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