Had a bit of time today and worked on supertux:
[supertux.git] / src / level_transformer.h
1 #ifndef __LEVEL_TRANSFORMER_H__
2 #define __LEVEL_TRANSFORMER_H__
3
4 class Level;
5 class Sector;
6
7 /**
8  * This class is an abstract interface for algorithms that transform levels in
9  * some way before they are played.
10  */
11 class LevelTransformer
12 {
13 public:
14   virtual ~LevelTransformer();
15   
16   /** transform a complete Level, the standard implementation just calls
17    * transformSector on each sector in the level. 
18    */
19   virtual void transform(Level* level);
20
21   virtual void transform_sector(Sector* sector) = 0;
22 };
23
24 #endif
25