summaryrefslogtreecommitdiff
path: root/engine/xe_engine.hpp
diff options
context:
space:
mode:
authortylermurphy534 <tylermurphy534@gmail.com>2022-09-19 07:08:42 -0400
committertylermurphy534 <tylermurphy534@gmail.com>2022-09-19 07:08:42 -0400
commit8754e31367f6fcfcda4bf50d373797a048dedf53 (patch)
tree432ff2e30fcfacf115d571ca27c4f7315c7ee873 /engine/xe_engine.hpp
parentLICENSE (diff)
downloadminecraftvulkan-8754e31367f6fcfcda4bf50d373797a048dedf53.tar.gz
minecraftvulkan-8754e31367f6fcfcda4bf50d373797a048dedf53.tar.bz2
minecraftvulkan-8754e31367f6fcfcda4bf50d373797a048dedf53.zip
start refactoring, doesnt compile
Diffstat (limited to 'engine/xe_engine.hpp')
-rw-r--r--engine/xe_engine.hpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/engine/xe_engine.hpp b/engine/xe_engine.hpp
new file mode 100644
index 0000000..93d3f8b
--- /dev/null
+++ b/engine/xe_engine.hpp
@@ -0,0 +1,40 @@
+#pragma once
+
+#include "xe_window.hpp"
+#include "xe_device.hpp"
+#include "xe_renderer.hpp"
+
+namespace xe {
+
+class XeEngine {
+
+ public:
+
+ XeEngine(int width, int height, std::string name);
+ ~XeEngine() {};
+
+ XeEngine(const XeEngine&) = delete;
+ XeEngine operator=(const XeEngine&) = delete;
+
+ const XeWindow& getWindow() const {
+ return xeWindow;
+ };
+
+ const XeRenderer& getRenderer() const {
+ return xeRenderer;
+ };
+
+
+ private:
+
+ void loadDescriptorPool();
+
+ XeWindow xeWindow;
+ XeDevice xeDevice;
+ XeRenderer xeRenderer;
+
+ std::unique_ptr<XeDescriptorPool> xeDescriptorPool{};
+ std::unique_ptr<xe::XeDescriptorSetLayout> xeDescriptorSetLayout;
+};
+
+} \ No newline at end of file