hivemind 1.0.0
Loading...
Searching...
No Matches
map_viewer.h
Go to the documentation of this file.
1#pragma once
2
3#include "core/types.h"
4
6
7#include <QElapsedTimer>
8#include <QGridLayout>
9#include <QLabel>
10#include <QMovie>
11#include <QWidget>
12
13namespace Gui
14{
15
16 class MapViewer : public QWidget
17 {
18 Q_OBJECT
19
20 public:
21 explicit MapViewer(QWidget* parent = nullptr);
22
23 public slots:
24 void DataReceived();
25 void WaitForData();
26
27 void
28 UpdateRoutes(std::pair<CompileScenario::Scenario::RouteMap::iterator,
29 CompileScenario::Scenario::RouteMap::iterator>
30 routes);
31 void UpdateAgents(std::pair<std::vector<Core::Agent>::iterator,
32 std::vector<Core::Agent>::iterator>
33 agents);
34
35 inline void
37 {
38 m_ActiveAgentId = id;
39 }
40
41 inline void
42 UpdateTimeStamp(float timeStamp)
43 {
44 m_TimeStamp = timeStamp;
45 }
46
47 protected:
48 void paintEvent(QPaintEvent* event) override;
49 void resizeEvent(QResizeEvent* event) override;
50 void mousePressEvent(QMouseEvent* event) override;
51
52 private:
54
55 void DrawKeyframes(QPainter& painter);
56 void DrawRoutes(QPainter& painter);
57 void DrawLoader(QPainter& painter) const;
58
59 private:
61 int m_Size;
62
71
72 std::pair<std::vector<Core::Agent>::iterator,
73 std::vector<Core::Agent>::iterator>
75 std::pair<CompileScenario::Scenario::RouteMap::iterator,
76 CompileScenario::Scenario::RouteMap::iterator>
78
81 };
82
83} // namespace Gui
void UpdateRoutes(std::pair< CompileScenario::Scenario::RouteMap::iterator, CompileScenario::Scenario::RouteMap::iterator > routes)
Definition: map_viewer.cpp:248
void DrawLoader(QPainter &painter) const
Definition: map_viewer.cpp:227
std::pair< CompileScenario::Scenario::RouteMap::iterator, CompileScenario::Scenario::RouteMap::iterator > m_Routes
Definition: map_viewer.h:77
void resizeEvent(QResizeEvent *event) override
Definition: map_viewer.cpp:63
float m_LoaderAngle
Definition: map_viewer.h:66
void WaitForData()
Definition: map_viewer.cpp:123
int m_ActiveAgentId
Definition: map_viewer.h:79
float m_TimeStamp
Definition: map_viewer.h:80
void UpdateRenderingArea()
Definition: map_viewer.cpp:109
void UpdateAgents(std::pair< std::vector< Core::Agent >::iterator, std::vector< Core::Agent >::iterator > agents)
Definition: map_viewer.cpp:258
void DrawKeyframes(QPainter &painter)
Definition: map_viewer.cpp:141
QTimer * m_WaitingForDataTimer
Definition: map_viewer.h:64
void UpdateActiveAgent(int id)
Definition: map_viewer.h:36
float m_LoaderSpan
Definition: map_viewer.h:69
void DrawRoutes(QPainter &painter)
Definition: map_viewer.cpp:175
QElapsedTimer m_WaitingForDataElapsedTimer
Definition: map_viewer.h:65
void DataReceived()
Definition: map_viewer.cpp:132
std::pair< std::vector< Core::Agent >::iterator, std::vector< Core::Agent >::iterator > m_Agents
Definition: map_viewer.h:74
bool m_WaitingForData
Definition: map_viewer.h:63
void mousePressEvent(QMouseEvent *event) override
Definition: map_viewer.cpp:69
float m_LoaderSpeed
Definition: map_viewer.h:68
void paintEvent(QPaintEvent *event) override
Definition: map_viewer.cpp:38
int m_LoaderThickness
Definition: map_viewer.h:70
void UpdateTimeStamp(float timeStamp)
Definition: map_viewer.h:42
Definition: action.h:6