gr::digital::protocol_parser_b
gr::sync_block
gnuradio/digital/protocol_parser_b.h
std::shared_ptr< protocol_parser_b > typedef std::shared_ptr<protocol_parser_b> gr::digital::protocol_parser_b::sptr sptr gr::digital::protocol_parser_b::sptr
sptr static sptr gr::digital::protocol_parser_b::make (const header_format_base::sptr &format) make gr::digital::protocol_parser_b::make const header_format_base::sptr & format

Make a packet header block using a given `format`.

format

The format object to use when reading the header.

Block that synchronizes to a header based on a header format object class. Designed to accept hard bits and produce PDUs with packed bytes (pmt::u8vector).

A packet synchronizer block. This block takes in hard bits (unpacked bytes; 1's and 0's as the LSB) and finds the access code as a sync word to find the start of a frame.

The block uses a format object derived from a header_format_base class.

Once the frame is detected (usually through the use of an access code), the block uses the format object's parser function to decode the remaining header. Generally, as in the default header case, the header will contain the length of the frame's payload. That and anything else in the header will generally go into the PDU's meta-data dictionary.

The block will output a PDU that contains frame's header info in the meta-data portion of the PDU and the payload itself. The payload is packed hard bits as taken from the input stream.

packet_sync_ff for a soft decision version.

gr::basic_block
gr::block
gr::digital::protocol_parser_b
gr::messages::msg_accepter
gr::msg_accepter
gr::sync_block
std::enable_shared_from_this< basic_block >
gr::basic_block
d_name
d_symbol_alias
d_symbol_name
d_input_signature
d_output_signature
d_debug_logger
d_logger
msg_queue
d_rpc_vars
d_message_subscribers
gr::block
d_max_output_buffer
d_min_output_buffer
d_pmt_done
d_system_port
gr::digital::protocol_parser_b
gr::messages::msg_accepter
gr::msg_accepter
gr::sync_block
std::basic_string< Char >
std::enable_shared_from_this< basic_block >
std::map< pmt::pmt_t, msg_queue_t, msg_queue_comparator >
std::shared_ptr< io_signature >
std::shared_ptr< logger >
std::shared_ptr< pmt_base >
std::shared_ptr< rpcbasic_base >
std::string
std::vector< long >
std::vector< rpcbasic_sptr >
elements
p
- gr::digital::protocol_parser_b
  _post
- gr::digital::protocol_parser_b
  active_thread_priority
- gr::digital::protocol_parser_b
  add_item_tag
- gr::digital::protocol_parser_b
  add_item_tag
- gr::digital::protocol_parser_b
  alias
- gr::digital::protocol_parser_b
  alias_pmt
- gr::digital::protocol_parser_b
  alias_set
- gr::digital::protocol_parser_b
  alignment
- gr::digital::protocol_parser_b
  allocate_buffer
- gr::digital::protocol_parser_b
  allocate_detail
- gr::digital::protocol_parser_b
  basic_block
- gr::digital::protocol_parser_b
  basic_block
- gr::digital::protocol_parser_b
  BLACK
- gr::digital::protocol_parser_b
  blkd_input_timer_value
- gr::digital::protocol_parser_b
  block
- gr::digital::protocol_parser_b
  block
- gr::digital::protocol_parser_b
  check_topology
- gr::digital::protocol_parser_b
  clear_finished
- gr::digital::protocol_parser_b
  color
- gr::digital::protocol_parser_b
  consume
- gr::digital::protocol_parser_b
  consume_each
- gr::digital::protocol_parser_b
  d_blkd_input_timer_value
- gr::digital::protocol_parser_b
  d_color
- gr::digital::protocol_parser_b
  d_debug_logger
- gr::digital::protocol_parser_b
  d_input_signature
- gr::digital::protocol_parser_b
  d_logger
- gr::digital::protocol_parser_b
  d_max_output_buffer
- gr::digital::protocol_parser_b
  d_message_subscribers
- gr::digital::protocol_parser_b
  d_min_output_buffer
- gr::digital::protocol_parser_b
  d_name
- gr::digital::protocol_parser_b
  d_output_signature
- gr::digital::protocol_parser_b
  d_pmt_done
- gr::digital::protocol_parser_b
  d_rpc_set
- gr::digital::protocol_parser_b
  d_rpc_vars
- gr::digital::protocol_parser_b
  d_setlock
- gr::digital::protocol_parser_b
  d_symbol_alias
- gr::digital::protocol_parser_b
  d_symbol_name
- gr::digital::protocol_parser_b
  d_symbolic_id
- gr::digital::protocol_parser_b
  d_system_port
- gr::digital::protocol_parser_b
  d_unique_id
- gr::digital::protocol_parser_b
  declare_sample_delay
- gr::digital::protocol_parser_b
  declare_sample_delay
- gr::digital::protocol_parser_b
  delete_head_nowait
- gr::digital::protocol_parser_b
  detail
- gr::digital::protocol_parser_b
  dispatch_msg
- gr::digital::protocol_parser_b
  empty_handled_p
- gr::digital::protocol_parser_b
  empty_handled_p
- gr::digital::protocol_parser_b
  empty_p
- gr::digital::protocol_parser_b
  empty_p
- gr::digital::protocol_parser_b
  enable_update_rate
- gr::digital::protocol_parser_b
  erase_msg
- gr::digital::protocol_parser_b
  expand_minmax_buffer
- gr::digital::protocol_parser_b
  finished
- gr::digital::protocol_parser_b
  fixed_rate
- gr::digital::protocol_parser_b
  fixed_rate_ninput_to_noutput
- gr::digital::protocol_parser_b
  fixed_rate_noutput_to_ninput
- gr::digital::protocol_parser_b
  forecast
- gr::digital::protocol_parser_b
  general_work
- gr::digital::protocol_parser_b
  get_iterator
- gr::digital::protocol_parser_b
  get_msg_map
- gr::digital::protocol_parser_b
  get_tags_in_range
- gr::digital::protocol_parser_b
  get_tags_in_range
- gr::digital::protocol_parser_b
  get_tags_in_window
- gr::digital::protocol_parser_b
  get_tags_in_window
- gr::digital::protocol_parser_b
  GREY
- gr::digital::protocol_parser_b
  has_msg_handler
- gr::digital::protocol_parser_b
  has_msg_port
- gr::digital::protocol_parser_b
  history
- gr::digital::protocol_parser_b
  identifier
- gr::digital::protocol_parser_b
  input_signature
- gr::digital::protocol_parser_b
  insert_tail
- gr::digital::protocol_parser_b
  is_pc_rpc_set
- gr::digital::protocol_parser_b
  is_rpc_set
- gr::digital::protocol_parser_b
  is_set_max_noutput_items
- gr::digital::protocol_parser_b
  is_unaligned
- gr::digital::protocol_parser_b
  log_level
- gr::digital::protocol_parser_b
  make
- gr::digital::protocol_parser_b
  max_noutput_items
- gr::digital::protocol_parser_b
  max_output_buffer
- gr::digital::protocol_parser_b
  message_port_is_hier
- gr::digital::protocol_parser_b
  message_port_is_hier_in
- gr::digital::protocol_parser_b
  message_port_is_hier_out
- gr::digital::protocol_parser_b
  message_port_pub
- gr::digital::protocol_parser_b
  message_port_register_in
- gr::digital::protocol_parser_b
  message_port_register_out
- gr::digital::protocol_parser_b
  message_port_sub
- gr::digital::protocol_parser_b
  message_port_unsub
- gr::digital::protocol_parser_b
  message_ports_in
- gr::digital::protocol_parser_b
  message_ports_out
- gr::digital::protocol_parser_b
  message_subscribers
- gr::digital::protocol_parser_b
  min_noutput_items
- gr::digital::protocol_parser_b
  min_output_buffer
- gr::digital::protocol_parser_b
  mp_relative_rate
- gr::digital::protocol_parser_b
  msg_accepter
- gr::digital::protocol_parser_b
  msg_queue
- gr::digital::protocol_parser_b
  name
- gr::digital::protocol_parser_b
  nitems_read
- gr::digital::protocol_parser_b
  nitems_written
- gr::digital::protocol_parser_b
  nmsgs
- gr::digital::protocol_parser_b
  no_pc_rpc
- gr::digital::protocol_parser_b
  notify_msg_neighbors
- gr::digital::protocol_parser_b
  output_multiple
- gr::digital::protocol_parser_b
  output_multiple_set
- gr::digital::protocol_parser_b
  output_signature
- gr::digital::protocol_parser_b
  pc_input_buffers_full
- gr::digital::protocol_parser_b
  pc_input_buffers_full
- gr::digital::protocol_parser_b
  pc_input_buffers_full_avg
- gr::digital::protocol_parser_b
  pc_input_buffers_full_avg
- gr::digital::protocol_parser_b
  pc_input_buffers_full_var
- gr::digital::protocol_parser_b
  pc_input_buffers_full_var
- gr::digital::protocol_parser_b
  pc_noutput_items
- gr::digital::protocol_parser_b
  pc_noutput_items_avg
- gr::digital::protocol_parser_b
  pc_noutput_items_var
- gr::digital::protocol_parser_b
  pc_nproduced
- gr::digital::protocol_parser_b
  pc_nproduced_avg
- gr::digital::protocol_parser_b
  pc_nproduced_var
- gr::digital::protocol_parser_b
  pc_output_buffers_full
- gr::digital::protocol_parser_b
  pc_output_buffers_full
- gr::digital::protocol_parser_b
  pc_output_buffers_full_avg
- gr::digital::protocol_parser_b
  pc_output_buffers_full_avg
- gr::digital::protocol_parser_b
  pc_output_buffers_full_var
- gr::digital::protocol_parser_b
  pc_output_buffers_full_var
- gr::digital::protocol_parser_b
  pc_throughput_avg
- gr::digital::protocol_parser_b
  pc_work_time
- gr::digital::protocol_parser_b
  pc_work_time_avg
- gr::digital::protocol_parser_b
  pc_work_time_total
- gr::digital::protocol_parser_b
  pc_work_time_var
- gr::digital::protocol_parser_b
  post
- gr::digital::protocol_parser_b
  processor_affinity
- gr::digital::protocol_parser_b
  produce
- gr::digital::protocol_parser_b
  relative_rate
- gr::digital::protocol_parser_b
  relative_rate_d
- gr::digital::protocol_parser_b
  relative_rate_i
- gr::digital::protocol_parser_b
  remove_item_tag
- gr::digital::protocol_parser_b
  remove_item_tag
- gr::digital::protocol_parser_b
  replace_buffer
- gr::digital::protocol_parser_b
  reset_perf_counters
- gr::digital::protocol_parser_b
  rpc_set
- gr::digital::protocol_parser_b
  sample_delay
- gr::digital::protocol_parser_b
  set_alignment
- gr::digital::protocol_parser_b
  set_blkd_input_timer_value
- gr::digital::protocol_parser_b
  set_block_alias
- gr::digital::protocol_parser_b
  set_color
- gr::digital::protocol_parser_b
  set_detail
- gr::digital::protocol_parser_b
  set_fixed_rate
- gr::digital::protocol_parser_b
  set_history
- gr::digital::protocol_parser_b
  set_input_signature
- gr::digital::protocol_parser_b
  set_inverse_relative_rate
- gr::digital::protocol_parser_b
  set_is_unaligned
- gr::digital::protocol_parser_b
  set_log_level
- gr::digital::protocol_parser_b
  set_max_noutput_items
- gr::digital::protocol_parser_b
  set_max_output_buffer
- gr::digital::protocol_parser_b
  set_max_output_buffer
- gr::digital::protocol_parser_b
  set_min_noutput_items
- gr::digital::protocol_parser_b
  set_min_output_buffer
- gr::digital::protocol_parser_b
  set_min_output_buffer
- gr::digital::protocol_parser_b
  set_msg_handler
- gr::digital::protocol_parser_b
  set_output_multiple
- gr::digital::protocol_parser_b
  set_output_signature
- gr::digital::protocol_parser_b
  set_processor_affinity
- gr::digital::protocol_parser_b
  set_relative_rate
- gr::digital::protocol_parser_b
  set_relative_rate
- gr::digital::protocol_parser_b
  set_tag_propagation_policy
- gr::digital::protocol_parser_b
  set_thread_priority
- gr::digital::protocol_parser_b
  set_unaligned
- gr::digital::protocol_parser_b
  setup_pc_rpc
- gr::digital::protocol_parser_b
  setup_rpc
- gr::digital::protocol_parser_b
  shared_from_base
- gr::digital::protocol_parser_b
  sptr
- gr::digital::protocol_parser_b
  start
- gr::digital::protocol_parser_b
  stop
- gr::digital::protocol_parser_b
  symbol_name
- gr::digital::protocol_parser_b
  symbolic_id
- gr::digital::protocol_parser_b
  sync_block
- gr::digital::protocol_parser_b
  sync_block
- gr::digital::protocol_parser_b
  system_handler
- gr::digital::protocol_parser_b
  tag_propagation_policy
- gr::digital::protocol_parser_b
  tag_propagation_policy_t
- gr::digital::protocol_parser_b
  thread_priority
- gr::digital::protocol_parser_b
  to_basic_block
- gr::digital::protocol_parser_b
  TPP_ALL_TO_ALL
- gr::digital::protocol_parser_b
  TPP_CUSTOM
- gr::digital::protocol_parser_b
  TPP_DONT
- gr::digital::protocol_parser_b
  TPP_ONE_TO_ONE
- gr::digital::protocol_parser_b
  unaligned
- gr::digital::protocol_parser_b
  unique_id
- gr::digital::protocol_parser_b
  unset_max_noutput_items
- gr::digital::protocol_parser_b
  unset_processor_affinity
- gr::digital::protocol_parser_b
  update_rate
- gr::digital::protocol_parser_b
  vcolor
- gr::digital::protocol_parser_b
  WHITE
- gr::digital::protocol_parser_b
  work
- gr::digital::protocol_parser_b
  WORK_CALLED_PRODUCE
- gr::digital::protocol_parser_b
  WORK_DONE
- gr::digital::protocol_parser_b
  work_return_t
- gr::digital::protocol_parser_b
  ~basic_block
- gr::digital::protocol_parser_b
  ~block
- gr::digital::protocol_parser_b
  ~msg_accepter