- added alpha to s quelch

git-svn-id: http://moon:8086/svn/software/trunk/projects/GnuRadio@519 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2019-05-30 12:45:44 +00:00
parent e9767ef9c9
commit 85d4f862a2
5 changed files with 20 additions and 8 deletions
+5 -4
View File
@@ -30,22 +30,23 @@ namespace gr {
namespace jay {
squelch::sptr
squelch::make(float initValue)
squelch::make(float initValue, float alpha)
{
return gnuradio::get_initial_sptr
(new squelch_impl(initValue));
(new squelch_impl(initValue, alpha));
}
/*
* The private constructor
*/
squelch_impl::squelch_impl(float initValue)
squelch_impl::squelch_impl(float initValue, float alpha)
: gr::sync_block("squelch",
gr::io_signature::make(1, 1, sizeof(float)),
gr::io_signature::make(1, 1, sizeof(float)))
, m_gain_target(initValue)
, m_gain(0.0f)
, m_alpha(alpha)
{
m_msg_port_in = pmt::mp("control");
message_port_register_in(m_msg_port_in);
@@ -120,7 +121,7 @@ namespace gr {
const float *in = (const float *) input_items[0];
float *out = (float *) output_items[0];
m_gain = 0.99f*m_gain + 0.01f*m_gain_target;
m_gain = (1.f-m_alpha)*m_gain + m_alpha*m_gain_target;
// Do <+signal processing+>
for (int i=0; i < noutput_items; i++)
+3 -2
View File
@@ -33,9 +33,10 @@ namespace gr {
pmt::pmt_t m_msg_port_in;
float m_gain_target;
float m_gain;
float m_alpha;
public:
squelch_impl(float initValue);
squelch_impl(float initValue, float alpha);
~squelch_impl();
void print_pair(pmt::pmt_t pair);
void on_message(pmt::pmt_t msg);