ScopeNG: first symbol clock synchro implementation

This commit is contained in:
f4exb 2018-04-03 23:33:55 +02:00
parent c9861c455b
commit 827c9b6b73
3 changed files with 13 additions and 2 deletions

View File

@ -23,10 +23,14 @@ Projector::Projector(ProjectionType projectionType) :
m_prevArg(0.0f), m_prevArg(0.0f),
m_cache(0), m_cache(0),
m_cacheMaster(true) m_cacheMaster(true)
{} {
m_symSync = new SymbolSynchronizer();
}
Projector::~Projector() Projector::~Projector()
{} {
delete m_symSync;
}
Real Projector::run(const Sample& s) Real Projector::run(const Sample& s)
{ {
@ -76,6 +80,9 @@ Real Projector::run(const Sample& s)
v = dPhi; v = dPhi;
} }
break; break;
case ProjectionClock:
v = m_symSync->run(s);
break;
case ProjectionReal: case ProjectionReal:
default: default:
v = s.m_real / SDR_RX_SCALEF; v = s.m_real / SDR_RX_SCALEF;

View File

@ -17,6 +17,8 @@
#include "dsptypes.h" #include "dsptypes.h"
class SymbolSynchronizer;
class Projector class Projector
{ {
public: public:
@ -47,4 +49,5 @@ private:
Real m_prevArg; Real m_prevArg;
Real *m_cache; Real *m_cache;
bool m_cacheMaster; bool m_cacheMaster;
SymbolSynchronizer *m_symSync;
}; };

View File

@ -1152,6 +1152,7 @@ void GLScopeNGGUI::fillProjectionCombo(QComboBox* comboBox)
comboBox->addItem("MagdB", Projector::ProjectionMagDB); comboBox->addItem("MagdB", Projector::ProjectionMagDB);
comboBox->addItem("Phi", Projector::ProjectionPhase); comboBox->addItem("Phi", Projector::ProjectionPhase);
comboBox->addItem("dPhi", Projector::ProjectionDPhase); comboBox->addItem("dPhi", Projector::ProjectionDPhase);
comboBox->addItem("Clk", Projector::ProjectionClock);
} }
void GLScopeNGGUI::disableLiveMode(bool disable) void GLScopeNGGUI::disableLiveMode(bool disable)