All Classes Files Functions Variables Typedefs Pages
TextureContainer.hpp
1 #pragma once
2 
3 #include "Texture.hpp"
4 #include "TextureContainer.fpp"
5 #include "HotTextureContainer.hpp"
6 #include "GLObject.hpp"
7 #include "../util/VariadicTools.hpp"
8 #include "../util/NotCloneable.hpp"
9 #include <functional>
10 #include <map>
11 #include <type_traits>
12 
13 namespace lumina {
14 
15 class TextureContainer : public GLObject {
16 public:
18 
19  void addTexture(int texUnit, TextureInterface& tex);
20  void prime(std::function<void(HotTexCont&)> func);
21 
22  int count() const;
23 
24 private:
25  std::map<int, TextureInterface*> m_texs;
26 };
27 
29 
30 }
31 
32 #include "TextureContainer.tpp"
Defines the Texture class that represents a OpenGL texture.
Definition: TextureContainer.hpp:15
Definition: GLObject.hpp:37
Definition: HotTextureContainer.hpp:11
Interface for all texture types (2D, 3D, Cube).
Definition: Texture.hpp:30