gr::analog::agc3_cc
gr::sync_block
gnuradio/analog/agc3_cc.h
std::shared_ptr< agc3_cc > typedef std::shared_ptr<agc3_cc> gr::analog::agc3_cc::sptr sptr gr::analog::agc3_cc::sptr
sptr static sptr gr::analog::agc3_cc::make (float attack_rate=1e-1, float decay_rate=1e-2, float reference=1.0, float gain=1.0, int iir_update_decim=1, float max_gain=0.0) make gr::analog::agc3_cc::make float attack_rate 1e-1 float decay_rate 1e-2 float reference 1.0 float gain 1.0 int iir_update_decim 1 float max_gain 0.0

Build a complex value AGC loop block with attack and decay rates.

attack_rate

the update rate of the loop when in attack mode.

decay_rate

the update rate of the loop when in decay mode.

reference

reference value to adjust signal power to.

gain

initial gain value.

iir_update_decim

stride by this number of samples before computing an IIR gain update

max_gain

maximum gain value (0 for unlimited).

attack_rate
decay_rate
gain
max_gain
reference
float virtual float gr::analog::agc3_cc::attack_rate () const =0 attack_rate gr::analog::agc3_cc::attack_rate make
float virtual float gr::analog::agc3_cc::decay_rate () const =0 decay_rate gr::analog::agc3_cc::decay_rate make
float virtual float gr::analog::agc3_cc::reference () const =0 reference gr::analog::agc3_cc::reference make set_reference
float virtual float gr::analog::agc3_cc::gain () const =0 gain gr::analog::agc3_cc::gain make set_gain
float virtual float gr::analog::agc3_cc::max_gain () const =0 max_gain gr::analog::agc3_cc::max_gain make set_max_gain
void virtual void gr::analog::agc3_cc::set_attack_rate (float rate)=0 set_attack_rate gr::analog::agc3_cc::set_attack_rate float rate
void virtual void gr::analog::agc3_cc::set_decay_rate (float rate)=0 set_decay_rate gr::analog::agc3_cc::set_decay_rate float rate
void virtual void gr::analog::agc3_cc::set_reference (float reference)=0 set_reference gr::analog::agc3_cc::set_reference float reference reference
void virtual void gr::analog::agc3_cc::set_gain (float gain)=0 set_gain gr::analog::agc3_cc::set_gain float gain gain
void virtual void gr::analog::agc3_cc::set_max_gain (float max_gain)=0 set_max_gain gr::analog::agc3_cc::set_max_gain float max_gain max_gain

high performance Automatic Gain Control class with attack and decay rates.

Unlike the AGC2 loop, this uses an initial linear calculation at the beginning for very fast initial acquisition. Moves to IIR model for tracking purposes.

For Power the absolute value of the complex number is used.

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