]> git.localhorst.tv Git - blank.git/commitdiff
add SDL2_image library
authorDaniel Karbach <daniel.karbach@localhorst.tv>
Thu, 12 Feb 2015 12:51:51 +0000 (13:51 +0100)
committerDaniel Karbach <daniel.karbach@localhorst.tv>
Thu, 12 Feb 2015 19:44:23 +0000 (20:44 +0100)
Makefile
src/app.cpp
src/app.hpp
src/init.cpp
src/init.hpp

index a3855ad93cb49686db1cd3ed3458ff14d073dabb..346b8490d16f37e1faa0fb4b1723e9cfe814e430 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
 CXX = g++ --std=c++11
 LDXX = g++
 
-LIBS = sdl2 glew
+LIBS = sdl2 SDL2_image glew
 
 PKGFLAGS := $(shell pkg-config --cflags $(LIBS))
 PKGLIBS := $(shell pkg-config --libs $(LIBS))
index de7a39ea48add859bcebda28a3f9fcfbe6efe00a..7ecbb744ac65ce5be365e8548fac7ef13788a275 100644 (file)
@@ -18,6 +18,7 @@ namespace blank {
 
 Application::Application()
 : init_sdl()
+, init_img()
 , init_gl()
 , window()
 , ctx(window.CreateContext())
index 5148a7a411a30669425b376ee9b73394802510c8..e525ec632e6459a8612539b6807cfad32549b89c 100644 (file)
@@ -28,6 +28,7 @@ public:
 
 private:
        InitSDL init_sdl;
+       InitIMG init_img;
        InitGL init_gl;
        Window window;
        GLContext ctx;
index 9010e00ba6b26c50d71514a96d48332f78d94d3c..20f4fe4e6c0693b7e2e235eabc4173a316ed9215 100644 (file)
@@ -2,6 +2,7 @@
 
 #include <algorithm>
 #include <SDL.h>
+#include <SDL_image.h>
 #include <stdexcept>
 #include <string>
 #include <GL/glew.h>
@@ -34,6 +35,17 @@ InitSDL::~InitSDL() {
 }
 
 
+InitIMG::InitIMG() {
+       if (IMG_Init(IMG_INIT_PNG) == 0) {
+               sdl_error("IMG_Init(IMG_INIT_PNG)");
+       }
+}
+
+InitIMG::~InitIMG() {
+       IMG_Quit();
+}
+
+
 InitGL::InitGL() {
        if (SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3) != 0) {
                sdl_error("SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 3)");
index 0256d40fcf5ec8df6846551e73d98924eb855b43..bf6191b1daf6e1c3e7a8afacb13b3c5d87d0d532 100644 (file)
@@ -21,6 +21,18 @@ public:
 };
 
 
+class InitIMG {
+
+public:
+       InitIMG();
+       ~InitIMG();
+
+       InitIMG(const InitIMG &) = delete;
+       InitIMG &operator =(const InitIMG &) = delete;
+
+};
+
+
 class InitGL {
 
 public: