GNU Radio C++ API
gr_peak_detector_ib Class Reference

Detect the peak of a signalIf a peak is detected, this block outputs a 1, or it outputs 0's. More...

#include <gr_peak_detector_ib.h>

Inheritance diagram for gr_peak_detector_ib:

Public Member Functions

void set_threshold_factor_rise (float thr)
 Set the threshold factor value for the rise time. More...
 
void set_threshold_factor_fall (float thr)
 Set the threshold factor value for the fall time. More...
 
void set_look_ahead (int look)
 Set the look-ahead factor. More...
 
void set_alpha (int alpha)
 Set the running average alpha. More...
 
float threshold_factor_rise ()
 Get the threshold factor value for the rise time. More...
 
float threshold_factor_fall ()
 Get the threshold factor value for the fall time. More...
 
int look_ahead ()
 Get the look-ahead factor value. More...
 
float alpha ()
 Get the alpha value of the running average. More...
 
int work (int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
 just like gr_block::general_work, only this arranges to call consume_each for you More...
 
- Public Member Functions inherited from gr_sync_block
void forecast (int noutput_items, gr_vector_int &ninput_items_required)
 Estimate input requirements given output request. More...
 
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 More...
 
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. More...
 
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. More...
 
- Public Member Functions inherited from gr_block
virtual ~gr_block ()
 
unsigned history () const
 
void set_history (unsigned history)
 
bool fixed_rate () const
 Return true if this block has a fixed input to output rate. More...
 
virtual bool start ()
 Called to enable drivers, etc for i/o devices. More...
 
virtual bool stop ()
 Called to disable drivers, etc for i/o devices. More...
 
void set_output_multiple (int multiple)
 Constrain the noutput_items argument passed to forecast and general_work. More...
 
int output_multiple () const
 
void consume (int which_input, int how_many_items)
 Tell the scheduler how_many_items of input stream which_input were consumed. More...
 
void consume_each (int how_many_items)
 Tell the scheduler how_many_items were consumed on each input stream. More...
 
void produce (int which_output, int how_many_items)
 Tell the scheduler how_many_items were produced on output stream which_output. More...
 
void set_relative_rate (double relative_rate)
 Set the approximate output rate / input rate. More...
 
double relative_rate () const
 return the approximate output rate / input rate More...
 
uint64_t nitems_read (unsigned int which_input)
 Return the number of items read on input stream which_input. More...
 
uint64_t nitems_written (unsigned int which_output)
 Return the number of items written on output stream which_output. More...
 
tag_propagation_policy_t tag_propagation_policy ()
 Asks for the policy used by the scheduler to moved tags downstream. More...
 
void set_tag_propagation_policy (tag_propagation_policy_t p)
 Set the policy by the scheduler to determine how tags are moved downstream. More...
 
gr_block_detail_sptr detail () const
 
void set_detail (gr_block_detail_sptr detail)
 
- Public Member Functions inherited from gr_basic_block
virtual ~gr_basic_block ()
 
long unique_id () const
 
std::string name () const
 
gr_io_signature_sptr input_signature () const
 
gr_io_signature_sptr output_signature () const
 
gr_basic_block_sptr to_basic_block ()
 
virtual bool check_topology (int ninputs, int noutputs)
 Confirm that ninputs and noutputs is an acceptable combination. More...
 
template<typename T >
void set_msg_handler (T msg_handler)
 Set the callback that is fired when messages are available. More...
 
- Public Member Functions inherited from gr_msg_accepter
 gr_msg_accepter ()
 
 ~gr_msg_accepter ()
 
void post (pmt::pmt_t msg)
 send msg to msg_accepter More...
 
- Public Member Functions inherited from gruel::msg_accepter
 msg_accepter ()
 
virtual ~msg_accepter ()
 

Friends

GR_CORE_API
gr_peak_detector_ib_sptr 
gr_make_peak_detector_ib (float threshold_factor_rise, float threshold_factor_fall, int look_ahead, float alpha)
 

Additional Inherited Members

- Public Types inherited from gr_block
enum  { WORK_CALLED_PRODUCE = -2, WORK_DONE = -1 }
 Magic return values from general_work. More...
 
enum  tag_propagation_policy_t { TPP_DONT = 0, TPP_ALL_TO_ALL = 1, TPP_ONE_TO_ONE = 2 }
 
- Protected Types inherited from gr_basic_block
enum  vcolor { WHITE, GREY, BLACK }
 
- Protected Member Functions inherited from gr_sync_block
 gr_sync_block (void)
 
 gr_sync_block (const std::string &name, gr_io_signature_sptr input_signature, gr_io_signature_sptr output_signature)
 
- Protected Attributes inherited from gr_basic_block
std::string d_name
 
gr_io_signature_sptr d_input_signature
 
gr_io_signature_sptr d_output_signature
 
long d_unique_id
 
vcolor d_color
 

Detailed Description

Detect the peak of a signal

If a peak is detected, this block outputs a 1, or it outputs 0's.

Parameters
threshold_factor_riseThe threshold factor determins when a peak has started. An average of the signal is calculated and when the value of the signal goes over threshold_factor_rise*average, we start looking for a peak.
threshold_factor_fallThe threshold factor determins when a peak has ended. An average of the signal is calculated and when the value of the signal goes bellow threshold_factor_fall*average, we stop looking for a peak.
look_aheadThe look-ahead value is used when the threshold is found to look if there another peak within this step range. If there is a larger value, we set that as the peak and look ahead again. This is continued until the highest point is found with This look-ahead range.
alphaThe gain value of a moving average filter

Member Function Documentation

float gr_peak_detector_ib::alpha ( )
inline

Get the alpha value of the running average.

Returns
alpha
int gr_peak_detector_ib::look_ahead ( )
inline

Get the look-ahead factor value.

Returns
look-ahead factor
void gr_peak_detector_ib::set_alpha ( int  alpha)
inline

Set the running average alpha.

Parameters
alphanew alpha for running average
void gr_peak_detector_ib::set_look_ahead ( int  look)
inline

Set the look-ahead factor.

Parameters
looknew look-ahead factor
void gr_peak_detector_ib::set_threshold_factor_fall ( float  thr)
inline

Set the threshold factor value for the fall time.

Parameters
thrnew threshold factor
void gr_peak_detector_ib::set_threshold_factor_rise ( float  thr)
inline

Set the threshold factor value for the rise time.

Parameters
thrnew threshold factor
float gr_peak_detector_ib::threshold_factor_fall ( )
inline

Get the threshold factor value for the fall time.

Returns
threshold factor
float gr_peak_detector_ib::threshold_factor_rise ( )
inline

Get the threshold factor value for the rise time.

Returns
threshold factor
int gr_peak_detector_ib::work ( int  noutput_items,
gr_vector_const_void_star input_items,
gr_vector_void_star output_items 
)
virtual

just like gr_block::general_work, only this arranges to call consume_each for you

The user must override work to define the signal processing code

Implements gr_sync_block.

Friends And Related Function Documentation

GR_CORE_API gr_peak_detector_ib_sptr gr_make_peak_detector_ib ( float  threshold_factor_rise,
float  threshold_factor_fall,
int  look_ahead,
float  alpha 
)
friend

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