19 #ifndef SDRBASE_DSP_DSPDEVICESINKENGINE_H_ 20 #define SDRBASE_DSP_DSPDEVICESINKENGINE_H_ 25 #include <QWaitCondition> 62 bool initGeneration();
63 bool startGeneration();
64 void stopGeneration();
68 void setSinkSequence(
int sequence);
78 QString errorMessage();
79 QString sinkDeviceDescription();
116 void work(
int nbWriteSamples);
121 State gotoError(
const QString& errorMsg);
124 void checkNumberOfBasebandSources();
127 void handleData(
int nbSamples);
128 void handleInputMessages();
129 void handleSynchronousMessages();
130 void handleForwardToSpectrumSink(
int nbSamples);
DeviceSampleSink * getSink()
engine is before initialization
State state() const
Return DSP engine current state.
DeviceSampleSink * m_deviceSampleSink
BasebandSampleSink * m_spectrumSink
std::pair< BasebandSampleSource *, SampleVector::iterator > BasebandSampleSourcesIteratorMapKV
BasebandSampleSourcesIteratorMap m_basebandSampleSourcesIteratorMap
ThreadedBasebandSampleSourcesIteratorMap m_threadedBasebandSampleSourcesIteratorMap
std::map< BasebandSampleSource *, SampleVector::iterator > BasebandSampleSourcesIteratorMap
std::list< ThreadedBasebandSampleSource * > ThreadedBasebandSampleSources
BasebandSampleSources m_basebandSampleSources
baseband sample sources within main thread (usually file input)
SyncMessenger m_syncMessenger
Used to process messages synchronously with the thread.
MessageQueue m_inputMessageQueue
MessageQueue * getInputMessageQueue()
quint64 m_centerFrequency
uint32_t m_multipleSourcesDivisionFactor
QString m_deviceDescription
std::map< ThreadedBasebandSampleSource *, SampleVector::iterator > ThreadedBasebandSampleSourcesIteratorMap
std::pair< ThreadedBasebandSampleSource *, SampleVector::iterator > ThreadedBasebandSampleSourcesIteratorMapKV
std::list< BasebandSampleSource * > BasebandSampleSources
ThreadedBasebandSampleSources m_threadedBasebandSampleSources
baseband sample sources on their own threads (usually channels)