background scene file loading introduces race condition with datamaps
[laserbrain_demo] / src / metascene.h
1 #ifndef METASCENE_H_
2 #define METASCENE_H_
3
4 #include <map>
5 #include "scene.h"
6 #include "mesh.h"
7
8 class MetaScene {
9 public:
10         SceneSet *sceneman;
11         TextureSet *texman;
12
13         std::vector<Scene*> scenes;
14
15         Mesh *walk_mesh;
16         Vec3 start_pos;
17         Quat start_rot;
18
19         std::map<Scene*, void*> scndata;
20
21
22         MetaScene(SceneSet *sman, TextureSet *tman);
23         ~MetaScene();
24
25         bool load(const char *fname);
26         bool scene_loaded(Scene *scn);
27
28         void update(float dt);
29         void draw() const;
30 };
31
32 #endif  // METASCENE_H_