* Make Sprite an IMMObject.
[matthijs/ABM2.git] / ABM2 / Engine / SpriteManager.h
1 #if !defined(SPRITE_MANAGER_H__INCLUDED)
2 #define SPRITE_MANAGER_H__INCLUDED
3
4 #include <vector>
5 #include <cassert>
6 #include "Engine/mmanager.h"
7 #include "Amaltheia/Sprite.h"
8 #include "Amaltheia/Graphics.h"
9
10 /**
11  * Used to hold data about default sprites.
12  */
13 struct SpriteData {
14         unsigned int   id;
15         char*          filename;
16         int            width;
17         int            height;
18 };
19
20
21 class CSpriteManager
22 {
23 public:
24         CSpriteManager(Graphics* g, SpriteData *sd);
25         CMMPointer<Sprite> getSprite(unsigned int id);
26 private:
27         std::vector< CMMPointer<Sprite> > loadedSprites;
28 };
29 #endif // SPRITE_MANAGER_H__INCLUDED