GNU Radio Manual and C++ API Reference  3.7.5
The Free & Open Software Radio Ecosystem
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
gr::digital::hdlc_framer_pb Class Reference

HDLC framer which takes in PMT binary blobs and outputs HDLC frames as unpacked bits, with CRC and bit stuffing added. The first sample of the frame is tagged with the tag frame_tag_name and includes a length field for tagged_stream use. More...

#include <gnuradio/digital/hdlc_framer_pb.h>

Public Types

typedef boost::shared_ptr
< hdlc_framer_pb
sptr

Static Public Member Functions

static sptr make (const std::string frame_tag_name)
 Return a shared_ptr to a new instance of digital::hdlc_framer.

Additional Inherited Members

- Public Member Functions inherited from gr::sync_block
virtual int work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)=0
 just like gr::block::general_work, only this arranges to call consume_each for you
void forecast (int noutput_items, gr_vector_int &ninput_items_required)
 Estimate input requirements given output request.
int general_work (int noutput_items, gr_vector_int &ninput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
 compute output items from input items
int fixed_rate_ninput_to_noutput (int ninput)
 Given ninput samples, return number of output samples that will be produced. N.B. this is only defined if fixed_rate returns true. Generally speaking, you don't need to override this.
int fixed_rate_noutput_to_ninput (int noutput)
 Given noutput samples, return number of input samples required to produce noutput. N.B. this is only defined if fixed_rate returns true. Generally speaking, you don't need to override this.
- Protected Types inherited from gr::basic_block
enum  vcolor { WHITE, GREY, BLACK }
- Protected Member Functions inherited from gr::sync_block
 sync_block (void)
 sync_block (const std::string &name, gr::io_signature::sptr input_signature, gr::io_signature::sptr output_signature)
- Protected Attributes inherited from gr::block
std::vector< long > d_max_output_buffer
std::vector< long > d_min_output_buffer
gr::thread::mutex d_setlock
gr::logger_ptr d_logger
gr::logger_ptr d_debug_logger

Detailed Description

HDLC framer which takes in PMT binary blobs and outputs HDLC frames as unpacked bits, with CRC and bit stuffing added. The first sample of the frame is tagged with the tag frame_tag_name and includes a length field for tagged_stream use.

This block outputs one whole frame at a time; if there is not enough output buffer space to fit a frame, it is pushed onto a queue. As a result flowgraphs which only run for a finite number of samples may not receive all frames in the queue, due to the scheduler's granularity. For flowgraphs that stream continuously (anything using a USRP) this should not be an issue.

Member Typedef Documentation

Member Function Documentation

static sptr gr::digital::hdlc_framer_pb::make ( const std::string  frame_tag_name)
static

Return a shared_ptr to a new instance of digital::hdlc_framer.

Parameters
frame_tag_name,:The tag to add to the first sample of each frame.

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