- support PolyPhase as ProcessorBlock

git-svn-id: http://moon:8086/svn/software/trunk/projects/mpsk_rx_gui@1021 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2022-06-17 10:34:53 +00:00
parent 2a002d2b9c
commit 3b318c44ea
+12 -2
View File
@@ -47,6 +47,7 @@ Receiver::Receiver(LogHandler *pLogHandler)
, m_ReceiverEnable(false) , m_ReceiverEnable(false)
, m_pDataListener(0) , m_pDataListener(0)
, m_timingGenerator() , m_timingGenerator()
, m_polyPhase(m_timingGenerator)
, m_farrow(m_timingGenerator) , m_farrow(m_timingGenerator)
, m_frameReceiver(this) , m_frameReceiver(this)
, m_pSymMapper(0) , m_pSymMapper(0)
@@ -209,6 +210,7 @@ void Receiver::init()
initSTR(); initSTR();
// Interpolation // Interpolation
m_polyPhase.buffer_out_add(&m_bb_buffer);
m_farrow.buffer_out_add(&m_bb_buffer); m_farrow.buffer_out_add(&m_bb_buffer);
// Symbol demapper // Symbol demapper
@@ -461,7 +463,15 @@ void Receiver::processBaseband(CVec const &iq, uint32_t len)
// Blind AGC gain adjustment // Blind AGC gain adjustment
// @2 x symbolrate // @2 x symbolrate
auto *next_buf_in = dynamic_cast<Processor::Buffer<ComplexScalar>*>(m_farrow.buffer_in()); Processor::Buffer<ComplexScalar> *next_buf_in = nullptr;
if (RCF_TYPE == RCF_TYPE_POLYPHASE_FARROW)
{
next_buf_in = dynamic_cast<Processor::Buffer<ComplexScalar>*>(m_farrow.buffer_in());
}
if (RCF_TYPE == RCF_TYPE_POLYPHASE_DISCRETE)
{
next_buf_in = dynamic_cast<Processor::Buffer<ComplexScalar>*>(m_polyPhase.buffer_in());
}
for (n = 0; n < len; n++) for (n = 0; n < len; n++)
{ {
// AGC Blind gain adjustments // AGC Blind gain adjustments
@@ -479,7 +489,7 @@ void Receiver::processBaseband(CVec const &iq, uint32_t len)
if (RCF_TYPE == RCF_TYPE_POLYPHASE_DISCRETE) if (RCF_TYPE == RCF_TYPE_POLYPHASE_DISCRETE)
{ {
// Polyphase interpolation // Polyphase interpolation
// m_polyPhase.process(); m_polyPhase.process();
} }
// Further BB processing // Further BB processing