Files
CubicSDR/src/CubicSDR.h
T

73 lines
1.4 KiB
C++
Raw Normal View History

#pragma once
//WX_GL_CORE_PROFILE 1
//WX_GL_MAJOR_VERSION 3
//WX_GL_MINOR_VERSION 2
#include <thread>
2014-10-27 21:22:29 -04:00
#include "wx/glcanvas.h"
#include "PrimaryGLContext.h"
#include "ThreadQueue.h"
#include "SDRThread.h"
2014-11-29 13:58:20 -05:00
#include "SDRPostThread.h"
#include "AudioThread.h"
#include "DemodulatorMgr.h"
class CubicSDR: public wxApp {
public:
CubicSDR() {
m_glContext = NULL;
}
2014-10-27 21:22:29 -04:00
PrimaryGLContext &GetContext(wxGLCanvas *canvas);
virtual bool OnInit();
virtual int OnExit();
void setFrequency(unsigned int freq);
int getFrequency();
DemodulatorThreadOutputQueue* getAudioVisualQueue() {
return audioVisualQueue;
}
SDRThreadIQDataQueue* getIQVisualQueue() {
return iqVisualQueue;
}
DemodulatorInstance *getDemodTest() {
return demodulatorTest;
}
DemodulatorMgr &getDemodMgr() {
return demodMgr;
}
private:
PrimaryGLContext *m_glContext;
DemodulatorMgr demodMgr;
unsigned int frequency;
DemodulatorInstance *demodulatorTest;
AudioThreadInputQueue *audioInputQueue;
AudioThread *audioThread;
SDRThread *sdrThread;
2014-11-29 13:58:20 -05:00
SDRPostThread *sdrPostThread;
SDRThreadCommandQueue* threadCmdQueueSDR;
SDRThreadIQDataQueue* iqVisualQueue;
2014-11-29 13:58:20 -05:00
SDRThreadIQDataQueue* iqPostDataQueue;
DemodulatorThreadOutputQueue* audioVisualQueue;
std::thread *threadAudio;
std::thread *threadSDR;
2014-11-29 13:58:20 -05:00
std::thread *threadPostSDR;
};
2014-10-27 21:22:29 -04:00
DECLARE_APP(CubicSDR)