1#ifndef FS_SHADERS_H
2#define FS_SHADERS_H
3
4struct Shader
5{
6 Shader(uint8_t id, std::string name, bool premium) :
7 name(std::move(name)), id(id), premium(premium) {}
8
9 uint8_t id;
10 std::string name;
11 bool premium;
12};
13
14class Shaders
15{
16 public:
17 bool reload();
18 bool loadFromXml();
19 Shader* getShaderByID(uint8_t id);
20 Shader* getShaderByName(const std::string& name);
21 std::string getShaderNameByID(uint8_t id);
22
23 const std::vector<Shader>& getShaders() const {
24 return shaders;
25 }
26
27 private:
28 std::vector<Shader> shaders;
29};
30
31#endif
32