17
0
mirror of https://github.com/MaSzyna-EU07/maszyna.git synced 2026-10-30 21:20:28 +01:00

pch migration to modules [wip]

This commit is contained in:
maj00r
2026-09-09 20:35:26 +02:00
parent c3007e3237
commit 3f7960aad5
350 changed files with 5958 additions and 3059 deletions

View File

@@ -1,13 +1,20 @@
module;
#include "glad/glad.h"
#include "stb/stb_image.h"
#include "utilities/Globals_macros.h"
#include "utilities/translation_macros.h"
#include "imgui/imgui.h"
#include <mutex>
#include <thread>
module eu07.widgets.cameraview_extcam;
import eu07.utilities.globals;
import eu07.utilities.translation;
import eu07.extras.piped_proc;
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#include "stdafx.h"
#include "widgets/cameraview_extcam.h"
#include "stb/stb_image.h"
#include "utilities/Globals.h"
#include "utilities/translation.h"
#include "extras/piped_proc.h"
ui::cameraview_panel::cameraview_panel()
: ui_panel(STR_C("Camera preview"), false)

View File

@@ -1,11 +1,20 @@
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
module;
#include <atomic>
#include <condition_variable>
#include <mutex>
#include <optional>
#include <thread>
export module eu07.widgets.cameraview_extcam;
import eu07.model.texture;
import eu07.application.uilayer;
export {
#pragma once
#include "stdafx.h"
#include "application/uilayer.h"
namespace ui
{
@@ -50,3 +59,5 @@ private:
std::string rec_name;
};
} // namespace ui
} // export

17
widgets/imgui_scale.h Normal file
View File

@@ -0,0 +1,17 @@
/*
This Source Code Form is subject to the
terms of the Mozilla Public License, v.
2.0. If a copy of the MPL was not
distributed with this file, You can
obtain one at
http://mozilla.org/MPL/2.0/.
*/
#pragma once
#include "imgui/imgui.h"
// ImVec2 scaled by the user's ui scale factor.
// Global comes from utilities/Globals_macros.h and resolves at the expansion
// site, so this header must not pull the settings module in itself.
#define ImVec2S(a, b) ImVec2(a * Global.ui_scale, b * Global.ui_scale)

View File

@@ -1,13 +1,33 @@
#include "stdafx.h"
#include "widgets/map.h"
#include "widgets/map_objects.h"
#include "utilities/Logs.h"
#include "vehicle/Train.h"
#include "vehicle/Camera.h"
#include "simulation/simulation.h"
#include "vehicle/Driver.h"
#include "model/AnimModel.h"
#include "application/application.h"
module;
#include "utilities/translation_macros.h"
#include "glad/glad.h"
#include <GLFW/glfw3.h>
#include <array>
#include <cmath>
#include <cstdint>
#include <fstream>
#include <ios>
#include <memory>
#include <sstream>
#include <string>
#include <utility>
#include <vector>
#include "utilities/Globals_macros.h"
#include "global_include/interfaces/ITexture_macros.h"
#include "imgui/imgui.h"
module eu07.widgets.map;
import eu07.utilities.translation;
import eu07.rendering.renderer;
import eu07.utilities.utilities;
import eu07.utilities.globals;
import eu07.widgets.map_objects;
import eu07.utilities.logs;
import eu07.vehicle.train;
import eu07.vehicle.camera;
import eu07.simulation.simulation;
import eu07.simcore;
import eu07.application.application;
ui::map_panel::map_panel() : ui_panel(STR_C("Map"), false)
{

View File

@@ -1,14 +1,31 @@
#pragma once
module;
#include <array>
#include <memory>
#include <vector>
#include "imgui/imgui.h"
export module eu07.widgets.map;
import eu07.gl.bindable;
import eu07.glm;
import eu07.global_include.interfaces.itexture;
import eu07.input.command;
import eu07.simcore;
import eu07.gl.shader;
import eu07.gl.renderbuffer;
import eu07.gl.ubo;
import eu07.rendering.geometrybank;
import eu07.model.texture;
import eu07.application.uilayer;
import eu07.widgets.map_objects;
import eu07.gl.framebuffer;
import eu07.rendering.frustum;
#ifdef WITH_OPENGL_MODERN
import eu07.rendering.opengl33renderer;
#endif
export {
#include "gl/shader.h"
#include "model/Texture.h"
#include "application/uilayer.h"
#include "widgets/map_objects.h"
#include "widgets/popup.h"
#include "gl/framebuffer.h"
#include "rendering/frustum.h"
#ifdef WITH_OPENGL_MODERN
#include "rendering/opengl33renderer.h"
#endif
namespace ui
@@ -139,3 +156,5 @@ class map_panel : public ui_panel
void handle_map_object_click(ui_panel &parent, std::shared_ptr<map::map_object> &obj);
void handle_map_object_hover(std::shared_ptr<map::map_object> &obj);
} // namespace ui
} // export

View File

@@ -1,8 +1,9 @@
#include "stdafx.h"
#include "widgets/map_objects.h"
#include "simulation/simulation.h"
#include "vehicle/DynObj.h"
module;
#include <memory>
#include "vehicle/DynObj_macros.h"
module eu07.widgets.map_objects;
import eu07.simulation.simulation;
map::objects map::Objects;
map::sorted_object_list map::objects::find_in_range(glm::vec3 from, float distance)

View File

@@ -1,9 +1,17 @@
#pragma once
module;
#include <memory>
#include <array>
#include <map>
#include <string>
#include <vector>
export module eu07.widgets.map_objects;
import eu07.glm;
import eu07.rendering.geometrybank;
import eu07.simcore;
export {
#include "simulation/simulation.h"
#include "world/Event.h"
#include "scene/scene.h"
#include "world/MemCell.h"
namespace map
{
@@ -92,3 +100,5 @@ struct objects
extern objects Objects;
} // namespace map
} // export

View File

@@ -1,7 +1,11 @@
#include "stdafx.h"
#include "widgets/perfgraphs.h"
#include "utilities/Timer.h"
#include "utilities/translation.h"
module;
#include <string>
#include "utilities/translation_macros.h"
#include "imgui/imgui.h"
module eu07.widgets.perfgraphs;
import eu07.utilities.timer;
import eu07.utilities.translation;
perfgraph_panel::perfgraph_panel() : ui_panel(STR("Performance"), false) {}

View File

@@ -1,4 +1,11 @@
#include "application/uilayer.h"
module;
#include <string>
#include <vector>
export module eu07.widgets.perfgraphs;
import eu07.application.uilayer;
export {
class perfgraph_panel : public ui_panel
{
@@ -45,3 +52,5 @@ class perfgraph_panel : public ui_panel
void render_contents() override;
};
} // export

View File

@@ -1,5 +1,8 @@
#include "stdafx.h"
#include "widgets/popup.h"
module;
#include "imgui/imgui.h"
#include <string>
module eu07.application.uilayer;
ui::popup::popup(ui_panel &panel) : m_parent(panel) {}

View File

@@ -1,24 +0,0 @@
#pragma once
class ui_panel;
namespace ui
{
class popup
{
std::string m_id;
static int id;
public:
popup(ui_panel &panel);
virtual ~popup();
virtual bool render();
protected:
ui_panel &m_parent;
virtual void render_content() = 0;
};
} // namespace ui

View File

@@ -1,7 +1,12 @@
#include "stdafx.h"
#include "widgets/time.h"
#include "simulation/simulationtime.h"
#include "utilities/Globals.h"
module;
#include "utilities/Globals_macros.h"
#include "imgui/imgui.h"
#include "utilities/translation_macros.h"
module eu07.widgets.time;
import eu07.simulation.simulationtime;
import eu07.utilities.translation;
import eu07.utilities.globals;
ui::time_panel::time_panel() : ui_panel(STR_C("Time and environment"), false)
{

View File

@@ -1,6 +1,12 @@
#include "application/uilayer.h"
#include "utilities/translation.h"
#include "input/command.h"
module;
#include "utilities/translation_macros.h"
export module eu07.widgets.time;
import eu07.application.uilayer;
import eu07.utilities.translation;
import eu07.input.command;
export {
namespace ui
{
@@ -21,3 +27,5 @@ class time_panel : public ui_panel
void open();
};
} // namespace ui
} // export

View File

@@ -1,12 +1,23 @@
#include "stdafx.h"
#include "widgets/trainingcard.h"
#include "simulation/simulation.h"
module;
#include "imgui/imgui.h"
#include <cmath>
#include <fstream>
#include <iostream>
#include <string>
#include <thread>
#ifdef __linux__
#include <unistd.h>
#endif
#ifdef __linux__
#include <sys/stat.h>
#endif
module eu07.widgets.trainingcard;
import eu07.simulation.simulation;
#ifdef __linux__
#endif
trainingcard_panel::trainingcard_panel() : ui_panel("Raport szkolenia", false)
{
// size = {400, 500};

View File

@@ -1,4 +1,12 @@
#include "application/uilayer.h"
module;
#include <atomic>
#include <optional>
#include <thread>
export module eu07.widgets.trainingcard;
import eu07.application.uilayer;
export {
class trainingcard_panel : public ui_panel
{
@@ -35,3 +43,5 @@ class trainingcard_panel : public ui_panel
std::string recording_timestamp;
};
} // export

View File

@@ -1,8 +1,16 @@
#include "stdafx.h"
#include "widgets/vehiclelist.h"
#include "simulation/simulation.h"
#include "vehicle/Driver.h"
#include "widgets/vehicleparams.h"
module;
#include "imgui/imgui.h"
#include "utilities/translation_macros.h"
#include <string>
#include "utilities/Globals_macros.h"
module eu07.widgets.vehiclelist;
import eu07.utilities.utilities;
import eu07.utilities.translation;
import eu07.utilities.globals;
import eu07.simulation.simulation;
import eu07.simcore;
import eu07.widgets.vehicleparams;
ui::vehiclelist_panel::vehiclelist_panel(ui_layer &parent)
: ui_panel(STR_C("Vehicle list"), false), m_parent(parent)

View File

@@ -1,4 +1,9 @@
#include "application/uilayer.h"
module;
export module eu07.widgets.vehiclelist;
import eu07.application.uilayer;
export {
namespace ui
{
@@ -13,3 +18,5 @@ class vehiclelist_panel : public ui_panel
void render_contents() override;
};
} // namespace ui
} // export

View File

@@ -1,9 +1,24 @@
#include "stdafx.h"
#include "widgets/vehicleparams.h"
#include "simulation/simulation.h"
#include "application/driveruipanels.h"
#include "vehicle/Driver.h"
#include "vehicle/Train.h"
module;
#include "utilities/translation_macros.h"
#include <GLFW/glfw3.h>
#include <array>
#include <cmath>
#include <string>
#include <utility>
#include <vector>
#include "utilities/Globals_macros.h"
#include "global_include/interfaces/ITexture_macros.h"
#include "imgui/imgui.h"
module eu07.widgets.vehicleparams;
import eu07.mczapkie.hamulce;
import eu07.utilities.utilities;
import eu07.gl.buffer;
import eu07.utilities.globals;
import eu07.glm;
import eu07.simulation.simulation;
import eu07.simcore;
import eu07.vehicle.train;
ui::vehicleparams_panel::vehicleparams_panel(const std::string &vehicle) : ui_panel(std::string(STR("Vehicle parameters")) + ": " + vehicle, false), m_vehicle_name(vehicle)
{

View File

@@ -1,9 +1,18 @@
#pragma once
module;
#include <string>
#include "utilities/translation_macros.h"
#include "imgui/imgui.h"
export module eu07.widgets.vehicleparams;
import eu07.global_include.interfaces.itexture;
import eu07.simcore;
import eu07.application.uilayer;
import eu07.utilities.translation;
import eu07.input.command;
import eu07.rendering.renderer;
export {
#include "application/uilayer.h"
#include "utilities/translation.h"
#include "input/command.h"
#include "rendering/renderer.h"
namespace ui
{
@@ -21,3 +30,5 @@ class vehicleparams_panel : public ui_panel
void render_contents() override;
};
} // namespace ui
} // export