IQ.Pilot Release Commit @ 661a2de
This commit is contained in:
@@ -81,6 +81,7 @@ struct Curve {
|
||||
enum class PaneKind : uint8_t {
|
||||
Plot,
|
||||
Map,
|
||||
Thumbnail,
|
||||
Camera,
|
||||
};
|
||||
|
||||
@@ -141,9 +142,15 @@ struct CameraFeedIndex {
|
||||
std::vector<CameraFrameIndexEntry> entries;
|
||||
};
|
||||
|
||||
struct ThumbnailFrame {
|
||||
double timestamp = 0.0;
|
||||
int segment = -1;
|
||||
std::vector<uint8_t> jpeg;
|
||||
};
|
||||
|
||||
enum class LogOrigin : uint8_t {
|
||||
Log,
|
||||
Android,
|
||||
OperatingSystem,
|
||||
Alert,
|
||||
};
|
||||
|
||||
@@ -318,6 +325,7 @@ struct RouteData {
|
||||
CameraFeedIndex driver_camera;
|
||||
CameraFeedIndex wide_road_camera;
|
||||
CameraFeedIndex qroad_camera;
|
||||
std::vector<ThumbnailFrame> thumbnails;
|
||||
GpsTrace gps_trace;
|
||||
std::vector<LogEntry> logs;
|
||||
std::vector<TimelineEntry> timeline;
|
||||
@@ -445,6 +453,7 @@ bool icon_menu_item(const char *glyph,
|
||||
|
||||
class AsyncRouteLoader;
|
||||
class CameraFeedView;
|
||||
class ThumbnailView;
|
||||
class StreamPoller;
|
||||
class MapDataManager;
|
||||
|
||||
@@ -486,6 +495,7 @@ struct AppSession {
|
||||
std::unique_ptr<AsyncRouteLoader> route_loader;
|
||||
std::unique_ptr<StreamPoller> stream_poller;
|
||||
std::array<std::unique_ptr<CameraFeedView>, 4> pane_camera_feeds;
|
||||
std::unique_ptr<ThumbnailView> thumbnail_view;
|
||||
std::unique_ptr<MapDataManager> map_data;
|
||||
bool async_route_loading = false;
|
||||
double next_stream_custom_refresh_time = 0.0;
|
||||
@@ -885,3 +895,20 @@ private:
|
||||
struct Impl;
|
||||
std::unique_ptr<Impl> impl_;
|
||||
};
|
||||
|
||||
class ThumbnailView {
|
||||
public:
|
||||
ThumbnailView();
|
||||
~ThumbnailView();
|
||||
|
||||
ThumbnailView(const ThumbnailView &) = delete;
|
||||
ThumbnailView &operator=(const ThumbnailView &) = delete;
|
||||
|
||||
void setThumbnails(const std::vector<ThumbnailFrame> &thumbnails);
|
||||
void update(double tracker_time);
|
||||
void drawSized(ImVec2 size, bool loading);
|
||||
|
||||
private:
|
||||
struct Impl;
|
||||
std::unique_ptr<Impl> impl_;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user