Shark.h
branchv_0
changeset 5 ee4ba9f5a053
parent 3 48dc4ae894b0
child 7 e6065118326f
--- a/Shark.h	Wed Nov 29 01:27:05 2023 +0100
+++ b/Shark.h	Fri Dec 01 20:25:49 2023 +0100
@@ -35,6 +35,8 @@
 #include "Logger.h"
 #include "MappedFile.h"
 #include "ImageLoader.h"
+#include "Shader.h"
+#include "Program.h"
 
 class Shark {
 private:
@@ -167,10 +169,15 @@
 			return (GLfloat) width / (GLfloat) height;
 		}
 	};
+
+	Display* dpy;
+	Window win;
+	XVisualInfo* vi;
+	GLXContext glc;
 	
 	ImageLoader imageLoader;
-	
-	GLuint shaderProgram;
+	std::vector<std::shared_ptr<Shader>> shaders;
+	std::shared_ptr<Program> shaderProgram;
 	std::vector<Texture> textures;
 
 	Configuration cfg;
@@ -184,7 +191,7 @@
 	void loadVertices();
 	Texture loadTexture(const std::string& fileName);
 	void loadTextures();
-	GLuint loadShaders();
+	std::shared_ptr<Program> loadShaders();
 public:
 	Shark(const Configuration& cfg);
 	virtual ~Shark();