1 #ifndef __DISPLAY_MANAGER_H__
2 #define __DISPLAY_MANAGER_H__
9 // some constants for predefined layer values
11 LAYER_BACKGROUND0 = -300,
12 LAYER_BACKGROUND1 = -200,
13 LAYER_BACKGROUNDTILES = -100,
16 LAYER_FOREGROUND0 = 200,
17 LAYER_FOREGROUND1 = 300
20 /** This class holds a list of all things that should be drawn to screen
28 /** adds an object to the list of stuff that should be drawn each frame.
29 * The layer argument specifies how early an object is drawn.
31 void add_drawable(Drawable* object, int layer);
33 void remove_drawable(Drawable* object);
37 ViewPort& get_viewport()
41 class DrawingQueueEntry {
43 DrawingQueueEntry(Drawable* newobject, int newlayer)
44 : object(newobject), layer(newlayer)
47 bool operator <(int olayer) const
49 return layer < olayer;
56 typedef std::vector<DrawingQueueEntry> DisplayList;
57 DisplayList displaylist;