mirror of
https://github.com/portapack-mayhem/mayhem-firmware.git
synced 2025-11-15 16:32:51 +00:00
Extract AISRecentEntries from AISView.
This commit is contained in:
@@ -63,6 +63,37 @@ struct AISRecentEntry {
|
||||
}
|
||||
};
|
||||
|
||||
class AISRecentEntries {
|
||||
public:
|
||||
using ContainerType = std::list<AISRecentEntry>;
|
||||
|
||||
void on_packet(const ais::Packet& packet);
|
||||
|
||||
ContainerType::const_reference front() const {
|
||||
return entries.front();
|
||||
}
|
||||
|
||||
ContainerType::const_iterator find(const ais::MMSI key) const;
|
||||
|
||||
ContainerType::const_iterator begin() const {
|
||||
return entries.begin();
|
||||
}
|
||||
|
||||
ContainerType::const_iterator end() const {
|
||||
return entries.end();
|
||||
}
|
||||
|
||||
bool empty() const {
|
||||
return entries.empty();
|
||||
}
|
||||
|
||||
private:
|
||||
ContainerType entries;
|
||||
const size_t entries_max = 64;
|
||||
|
||||
void truncate_entries();
|
||||
};
|
||||
|
||||
class AISLogger {
|
||||
public:
|
||||
AISLogger();
|
||||
@@ -96,15 +127,10 @@ private:
|
||||
|
||||
bool has_focus = false;
|
||||
|
||||
using RecentEntries = std::list<AISRecentEntry>;
|
||||
RecentEntries recent;
|
||||
AISRecentEntries recent;
|
||||
|
||||
void on_packet(const ais::Packet& packet);
|
||||
|
||||
void truncate_entries();
|
||||
|
||||
RecentEntries::iterator selected_entry();
|
||||
|
||||
void advance(const int32_t amount);
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user