qHexWalker 0.0.1
Hexagonal Grid Pathfinding & Maze Visualization on Interactive Maps
Loading...
Searching...
No Matches
entryPoint.h
Go to the documentation of this file.
1
12#ifndef Q_HEX_WALKER_ENTRYPOINT_H
13#define Q_HEX_WALKER_ENTRYPOINT_H
14
15class QQuickWindow;
16class QQmlApplicationEngine;
17class MapProvider;
18
19namespace TD {
20class Logger;
21}
22
23class H3Model;
24class H3TargetsModel;
25
61class EntryPoint final : public QObject {
62 Q_OBJECT
63 Q_DISABLE_COPY_MOVE(EntryPoint)
64
65public:
75 explicit EntryPoint(const std::string &loggerName, QObject *parent = nullptr);
76
82 ~EntryPoint() override;
83
84private:
89 void InitLogger(std::string_view loggerName);
90
97 void InitDataModels();
98
104 void InitMap();
105
107 const QString pathUrl_c{"https://api.maptiler.com/maps/base-v4/style.json?key=bFpEhpcbtSI3j1gzj2Is"};
108
115 void InitEngine();
116
117 QQmlApplicationEngine *engine_{};
118 QQuickWindow *rootWindow_{};
119
120 std::unique_ptr<TD::Logger> logger_;
124};
125
126#endif // Q_HEX_WALKER_ENTRYPOINT_H
Application initialization orchestrator.
Definition entryPoint.h:61
MapProvider * mapProvider_
Map tile provider.
Definition entryPoint.h:123
QQuickWindow * rootWindow_
Root window reference.
Definition entryPoint.h:118
std::unique_ptr< TD::Logger > logger_
Logger instance.
Definition entryPoint.h:120
~EntryPoint() override
Destructor.
void InitEngine()
Initializes the QML engine and loads the UI.
H3TargetsModel * targetsModel_
Waypoint targets model.
Definition entryPoint.h:122
H3Model * h3Model_
Hexagonal cell model.
Definition entryPoint.h:121
void InitMap()
Initializes the map provider and style.
QQmlApplicationEngine * engine_
QML application engine.
Definition entryPoint.h:117
void InitLogger(std::string_view loggerName)
Initializes the spdlog logging system.
const QString pathUrl_c
Default MapTiler API URL for map tiles.
Definition entryPoint.h:107
void InitDataModels()
Initializes data models (H3Model, H3TargetsModel).
Qt model for H3 hexagonal cell visualization and management.
Definition h3Model.h:58