mirror of
https://github.com/eried/portapack-mayhem.git
synced 2025-12-16 00:04:04 -05:00
#765 unlimited range for manual mode
* fix for #765, manual mode has unlimited range now * speedup for button_add.on_select (roughly x70 times faster) * fix for random freezes while switching to Audio
This commit is contained in:
parent
25c267a3d9
commit
1f7b800c2a
2 changed files with 122 additions and 42 deletions
|
|
@ -46,6 +46,7 @@ size_t const mod_step[3] = {9000, 100000, 12500 };
|
|||
class ScannerThread {
|
||||
public:
|
||||
ScannerThread(std::vector<rf::Frequency> frequency_list);
|
||||
ScannerThread(const jammer::jammer_range_t& frequency_range, size_t def_step);
|
||||
~ScannerThread();
|
||||
|
||||
void set_scanning(const bool v);
|
||||
|
|
@ -67,6 +68,8 @@ public:
|
|||
|
||||
private:
|
||||
std::vector<rf::Frequency> frequency_list_ { };
|
||||
jammer::jammer_range_t frequency_range_ {false, 0, 0};
|
||||
size_t def_step_ { 0 };
|
||||
Thread* thread { nullptr };
|
||||
|
||||
bool _scanning { true };
|
||||
|
|
@ -75,6 +78,7 @@ private:
|
|||
uint32_t _freq_del { 0 };
|
||||
static msg_t static_fn(void* arg);
|
||||
void run();
|
||||
void create_thread();
|
||||
};
|
||||
|
||||
class ScannerView : public View {
|
||||
|
|
@ -120,6 +124,7 @@ private:
|
|||
NavigationView& nav_;
|
||||
|
||||
void start_scan_thread();
|
||||
void start_scan_thread(const jammer::jammer_range_t& frequency_range, size_t def_step);
|
||||
size_t change_mode(uint8_t mod_type);
|
||||
void show_max();
|
||||
void scan_pause();
|
||||
|
|
@ -129,7 +134,7 @@ private:
|
|||
|
||||
void on_statistics_update(const ChannelStatistics& statistics);
|
||||
void on_headphone_volume_changed(int32_t v);
|
||||
void handle_retune(uint32_t i);
|
||||
void handle_retune(int64_t freq, uint32_t freq_idx);
|
||||
|
||||
jammer::jammer_range_t frequency_range { false, 0, 0 }; //perfect for manual scan task too...
|
||||
int32_t squelch { 0 };
|
||||
|
|
@ -139,6 +144,7 @@ private:
|
|||
freqman_db database { };
|
||||
std::string loaded_file_name;
|
||||
uint32_t current_index { 0 };
|
||||
rf::Frequency current_frequency { 0 };
|
||||
bool userpause { false };
|
||||
|
||||
Labels labels {
|
||||
|
|
@ -295,7 +301,7 @@ private:
|
|||
Message::ID::Retune,
|
||||
[this](const Message* const p) {
|
||||
const auto message = *reinterpret_cast<const RetuneMessage*>(p);
|
||||
this->handle_retune(message.range);
|
||||
this->handle_retune(message.freq, message.range);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue