mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-02-03 09:44:01 -05:00
ATV Demod: RF configuration message
This commit is contained in:
parent
e061b5eb2c
commit
822610074d
@ -26,6 +26,7 @@
|
|||||||
#include "dsp/pidcontroller.h"
|
#include "dsp/pidcontroller.h"
|
||||||
|
|
||||||
MESSAGE_CLASS_DEFINITION(ATVDemod::MsgConfigureATVDemod, Message)
|
MESSAGE_CLASS_DEFINITION(ATVDemod::MsgConfigureATVDemod, Message)
|
||||||
|
MESSAGE_CLASS_DEFINITION(ATVDemod::MsgConfigureRFATVDemod, Message)
|
||||||
|
|
||||||
const float ATVDemod::m_fltSecondToUs = 1000000.0f;
|
const float ATVDemod::m_fltSecondToUs = 1000000.0f;
|
||||||
|
|
||||||
@ -98,6 +99,19 @@ void ATVDemod::configure(
|
|||||||
objMessageQueue->push(msgCmd);
|
objMessageQueue->push(msgCmd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ATVDemod::configureRF(
|
||||||
|
MessageQueue* objMessageQueue,
|
||||||
|
ATVModulation enmModulation,
|
||||||
|
float fltRFBandwidth,
|
||||||
|
float fltRFOppBandwidth)
|
||||||
|
{
|
||||||
|
Message* msgCmd = MsgConfigureRFATVDemod::create(
|
||||||
|
enmModulation,
|
||||||
|
fltRFBandwidth,
|
||||||
|
fltRFOppBandwidth);
|
||||||
|
objMessageQueue->push(msgCmd);
|
||||||
|
}
|
||||||
|
|
||||||
void ATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool firstOfBurst)
|
void ATVDemod::feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool firstOfBurst)
|
||||||
{
|
{
|
||||||
float fltDivSynchroBlack = 1.0f - m_objRunning.m_fltVoltLevelSynchroBlack;
|
float fltDivSynchroBlack = 1.0f - m_objRunning.m_fltVoltLevelSynchroBlack;
|
||||||
|
@ -76,6 +76,20 @@ public:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
struct ATVRFConfig
|
||||||
|
{
|
||||||
|
ATVModulation m_enmModulation;
|
||||||
|
float m_fltRFBandwidth;
|
||||||
|
float m_fltRFOppBandwidth;
|
||||||
|
|
||||||
|
ATVRFConfig() :
|
||||||
|
m_enmModulation(ATV_FM1),
|
||||||
|
m_fltRFBandwidth(0),
|
||||||
|
m_fltRFOppBandwidth(0)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
ATVDemod();
|
ATVDemod();
|
||||||
~ATVDemod();
|
~ATVDemod();
|
||||||
|
|
||||||
@ -90,6 +104,11 @@ public:
|
|||||||
bool blnHSync,
|
bool blnHSync,
|
||||||
bool blnVSync);
|
bool blnVSync);
|
||||||
|
|
||||||
|
void configureRF(MessageQueue* objMessageQueue,
|
||||||
|
ATVModulation enmModulation,
|
||||||
|
float fltRFBandwidth,
|
||||||
|
float fltRFOppBandwidth);
|
||||||
|
|
||||||
virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool po);
|
virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool po);
|
||||||
virtual void start();
|
virtual void start();
|
||||||
virtual void stop();
|
virtual void stop();
|
||||||
@ -106,7 +125,8 @@ private:
|
|||||||
MESSAGE_CLASS_DECLARATION
|
MESSAGE_CLASS_DECLARATION
|
||||||
|
|
||||||
public:
|
public:
|
||||||
static MsgConfigureATVDemod* create(float fltLineDurationUs,
|
static MsgConfigureATVDemod* create(
|
||||||
|
float fltLineDurationUs,
|
||||||
float fltTopDurationUs,
|
float fltTopDurationUs,
|
||||||
float fltFramePerS,
|
float fltFramePerS,
|
||||||
float fltRatioOfRowsToDisplay,
|
float fltRatioOfRowsToDisplay,
|
||||||
@ -116,7 +136,8 @@ private:
|
|||||||
bool blnHSync,
|
bool blnHSync,
|
||||||
bool blnVSync)
|
bool blnVSync)
|
||||||
{
|
{
|
||||||
return new MsgConfigureATVDemod(fltLineDurationUs,
|
return new MsgConfigureATVDemod(
|
||||||
|
fltLineDurationUs,
|
||||||
fltTopDurationUs,
|
fltTopDurationUs,
|
||||||
fltFramePerS,
|
fltFramePerS,
|
||||||
fltRatioOfRowsToDisplay,
|
fltRatioOfRowsToDisplay,
|
||||||
@ -154,6 +175,37 @@ private:
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class MsgConfigureRFATVDemod : public Message
|
||||||
|
{
|
||||||
|
MESSAGE_CLASS_DECLARATION
|
||||||
|
|
||||||
|
public:
|
||||||
|
static MsgConfigureRFATVDemod* create(
|
||||||
|
ATVModulation enmModulation,
|
||||||
|
float fltRFBandwidth,
|
||||||
|
float fltRFOppBandwidth)
|
||||||
|
{
|
||||||
|
return new MsgConfigureRFATVDemod(
|
||||||
|
enmModulation,
|
||||||
|
fltRFBandwidth,
|
||||||
|
fltRFOppBandwidth);
|
||||||
|
}
|
||||||
|
|
||||||
|
ATVRFConfig m_objMsgConfig;
|
||||||
|
|
||||||
|
private:
|
||||||
|
MsgConfigureRFATVDemod(
|
||||||
|
ATVModulation enmModulation,
|
||||||
|
float fltRFBandwidth,
|
||||||
|
float fltRFOppBandwidth) :
|
||||||
|
Message()
|
||||||
|
{
|
||||||
|
m_objMsgConfig.m_enmModulation = enmModulation;
|
||||||
|
m_objMsgConfig.m_fltRFBandwidth = fltRFBandwidth;
|
||||||
|
m_objMsgConfig.m_fltRFOppBandwidth = fltRFOppBandwidth;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
//*************** ATV PARAMETERS ***************
|
//*************** ATV PARAMETERS ***************
|
||||||
ATVScreen * m_objRegisteredATVScreen;
|
ATVScreen * m_objRegisteredATVScreen;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user