mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-04-10 13:40:37 -04:00
New scope: methods to create/change/delete traces and triggers
This commit is contained in:
parent
cce5b29aa6
commit
a36870f958
@ -21,7 +21,11 @@
|
||||
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgConfigureScopeVisNG, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGAddTrigger, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGChangeTrigger, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGRemoveTrigger, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGAddTrace, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGChangeTrace, Message)
|
||||
MESSAGE_CLASS_DEFINITION(ScopeVisNG::MsgScopeVisNGRemoveTrace, Message)
|
||||
|
||||
const uint ScopeVisNG::m_traceChunkSize = 4800;
|
||||
const Real ScopeVisNG::ProjectorMagDB::mult = (10.0f / log2f(10.0f));
|
||||
@ -64,11 +68,46 @@ void ScopeVisNG::setSampleRate(int sampleRate)
|
||||
}
|
||||
}
|
||||
|
||||
void ScopeVisNG::configure(MessageQueue* msgQueue,
|
||||
uint traceSize)
|
||||
void ScopeVisNG::configure(uint traceSize)
|
||||
{
|
||||
Message* cmd = MsgConfigureScopeVisNG::create(traceSize);
|
||||
msgQueue->push(cmd);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::addTrace(const TraceData& traceData)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGAddTrace::create(traceData);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::changeTrace(const TraceData& traceData, uint32_t traceIndex)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGChangeTrace::create(traceData, traceIndex);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::removeTrace(uint32_t traceIndex)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGRemoveTrace::create(traceIndex);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::addTrigger(const TriggerData& triggerData)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGAddTrigger::create(triggerData);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::changeTrigger(const TriggerData& triggerData, uint32_t triggerIndex)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGChangeTrigger::create(triggerData, triggerIndex);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
void ScopeVisNG::removeTrigger(uint32_t triggerIndex)
|
||||
{
|
||||
Message* cmd = MsgScopeVisNGRemoveTrigger::create(triggerIndex);
|
||||
getInputMessageQueue()->push(cmd);
|
||||
}
|
||||
|
||||
|
||||
|
@ -95,8 +95,13 @@ public:
|
||||
virtual ~ScopeVisNG();
|
||||
|
||||
void setSampleRate(int sampleRate);
|
||||
void configure(MessageQueue* msgQueue,
|
||||
uint32_t traceSize);
|
||||
void configure(uint32_t traceSize);
|
||||
void addTrace(const TraceData& traceData);
|
||||
void changeTrace(const TraceData& traceData, uint32_t traceIndex);
|
||||
void removeTrace(uint32_t traceIndex);
|
||||
void addTrigger(const TriggerData& triggerData);
|
||||
void changeTrigger(const TriggerData& triggerData, uint32_t traceIndex);
|
||||
void removeTrigger(uint32_t triggerIndex);
|
||||
|
||||
virtual void feed(const SampleVector::const_iterator& begin, const SampleVector::const_iterator& end, bool positiveOnly);
|
||||
virtual void start();
|
||||
@ -133,16 +138,37 @@ private:
|
||||
|
||||
public:
|
||||
static MsgScopeVisNGAddTrigger* create(
|
||||
ProjectionType projectionType)
|
||||
const TriggerData& triggerData)
|
||||
{
|
||||
return new MsgScopeVisNGAddTrigger(projectionType);
|
||||
return new MsgScopeVisNGAddTrigger(triggerData);
|
||||
}
|
||||
|
||||
private:
|
||||
ProjectionType m_projectionType;
|
||||
TriggerData m_triggerData;
|
||||
|
||||
MsgScopeVisNGAddTrigger(ProjectionType projectionType) :
|
||||
m_projectionType(projectionType)
|
||||
MsgScopeVisNGAddTrigger(const TriggerData& triggerData) :
|
||||
m_triggerData(triggerData)
|
||||
{}
|
||||
};
|
||||
|
||||
// ---------------------------------------------
|
||||
class MsgScopeVisNGChangeTrigger : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
static MsgScopeVisNGChangeTrigger* create(
|
||||
const TriggerData& triggerData, uint32_t triggerIndex)
|
||||
{
|
||||
return new MsgScopeVisNGChangeTrigger(triggerData, triggerIndex);
|
||||
}
|
||||
|
||||
private:
|
||||
TriggerData m_triggerData;
|
||||
uint32_t m_triggerIndex;
|
||||
|
||||
MsgScopeVisNGChangeTrigger(const TriggerData& triggerData, uint32_t triggerIndex) :
|
||||
m_triggerData(triggerData),
|
||||
m_triggerIndex(triggerIndex)
|
||||
{}
|
||||
};
|
||||
|
||||
@ -165,6 +191,65 @@ private:
|
||||
{}
|
||||
};
|
||||
|
||||
// ---------------------------------------------
|
||||
class MsgScopeVisNGAddTrace : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
static MsgScopeVisNGAddTrace* create(
|
||||
const TraceData& traceData)
|
||||
{
|
||||
return new MsgScopeVisNGAddTrace(traceData);
|
||||
}
|
||||
|
||||
private:
|
||||
TraceData m_traceData;
|
||||
|
||||
MsgScopeVisNGAddTrace(const TraceData& traceData) :
|
||||
m_traceData(traceData)
|
||||
{}
|
||||
};
|
||||
|
||||
// ---------------------------------------------
|
||||
class MsgScopeVisNGChangeTrace : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
static MsgScopeVisNGChangeTrace* create(
|
||||
const TraceData& traceData, uint32_t traceIndex)
|
||||
{
|
||||
return new MsgScopeVisNGChangeTrace(traceData, traceIndex);
|
||||
}
|
||||
|
||||
private:
|
||||
TraceData m_traceData;
|
||||
uint32_t m_traceIndex;
|
||||
|
||||
MsgScopeVisNGChangeTrace(TraceData traceData, uint32_t traceIndex) :
|
||||
m_traceData(traceData),
|
||||
m_traceIndex(traceIndex)
|
||||
{}
|
||||
};
|
||||
|
||||
// ---------------------------------------------
|
||||
class MsgScopeVisNGRemoveTrace : public Message {
|
||||
MESSAGE_CLASS_DECLARATION
|
||||
|
||||
public:
|
||||
static MsgScopeVisNGRemoveTrace* create(
|
||||
uint32_t traceIndex)
|
||||
{
|
||||
return new MsgScopeVisNGRemoveTrace(traceIndex);
|
||||
}
|
||||
|
||||
private:
|
||||
uint32_t m_traceIndex;
|
||||
|
||||
MsgScopeVisNGRemoveTrace(uint32_t traceIndex) :
|
||||
m_traceIndex(traceIndex)
|
||||
{}
|
||||
};
|
||||
|
||||
// === projectors ===
|
||||
// ---------------------------------------------
|
||||
class Projector
|
||||
|
Loading…
Reference in New Issue
Block a user