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 {
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({
tuning_frequency(),
@ -51,6 +57,20 @@ CaptureAppView::~CaptureAppView() {
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 {
return initial_target_frequency;
}

View File

@ -37,6 +37,8 @@ public:
CaptureAppView(NavigationView& nav);
~CaptureAppView();
void focus() override;
std::string title() const override { return "Capture"; };
private:
@ -48,6 +50,19 @@ private:
uint32_t target_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 */