Start/stop control of baseband capture.

This commit is contained in:
Jared Boone 2016-04-11 11:22:35 -07:00
parent 5558ca60d7
commit 40df73b923
2 changed files with 36 additions and 1 deletions

View File

@ -28,7 +28,13 @@
namespace ui { namespace ui {
CaptureAppView::CaptureAppView(NavigationView&) { CaptureAppView::CaptureAppView(NavigationView&) {
capture_thread = std::make_unique<AudioThread>("baseband.c16"); add_children({ {
&button_start,
&button_stop,
} });
button_start.on_select = [this](Button&){ this->on_start(); };
button_stop.on_select = [this](Button&){ this->on_stop(); };
radio::enable({ radio::enable({
tuning_frequency(), tuning_frequency(),
@ -51,6 +57,20 @@ CaptureAppView::~CaptureAppView() {
radio::disable(); radio::disable();
} }
void CaptureAppView::focus() {
button_start.focus();
}
void CaptureAppView::on_start() {
if( !capture_thread ) {
capture_thread = std::make_unique<AudioThread>("baseband.c16");
}
}
void CaptureAppView::on_stop() {
capture_thread.reset();
}
uint32_t CaptureAppView::target_frequency() const { uint32_t CaptureAppView::target_frequency() const {
return initial_target_frequency; return initial_target_frequency;
} }

View File

@ -37,6 +37,8 @@ public:
CaptureAppView(NavigationView& nav); CaptureAppView(NavigationView& nav);
~CaptureAppView(); ~CaptureAppView();
void focus() override;
std::string title() const override { return "Capture"; }; std::string title() const override { return "Capture"; };
private: private:
@ -48,6 +50,19 @@ private:
uint32_t target_frequency() const; uint32_t target_frequency() const;
uint32_t tuning_frequency() const; uint32_t tuning_frequency() const;
void on_start();
void on_stop();
Button button_start {
{ 16, 17 * 16, 96, 24 },
"Start"
};
Button button_stop {
{ 240 - 96 - 16, 17 * 16, 96, 24 },
"Stop"
};
}; };
} /* namespace ui */ } /* namespace ui */