quick backup
[demo] / src / scene.h
1 /*
2         Class Scene:
3         It keeps the resources (materials, textures, meshes, lights, cameras).
4         * loads resources
5         * keeps pointers to them
6         * performs the cleanup
7 */
8
9 #ifndef SCENE_H_
10 #define SCENE_H_
11
12 #include <vector>
13
14 class Mesh;
15 struct Material;
16 class Texture;
17 class Object;
18
19 class Scene {
20 public:
21         std::vector<Mesh *> meshes;
22         std::vector<Material *> materials;
23         std::vector<Texture *> textures;
24         std::vector<Object *> objects;
25
26         Scene();
27         ~Scene();
28
29         bool load(const char *fname);
30
31         Mesh *find_mesh(const char *name);
32         Material *find_material(const char *name);
33         Texture *find_texture(const char *name);
34 };
35 #endif // SCENE_H_