5 #include "game/level/action.h"
8 typedef struct RectLayer RectLayer;
9 typedef struct LineStream LineStream;
11 LayerPtr rect_layer_as_layer(RectLayer *layer);
12 // NOTE: create_rect_layer and create_rect_layer_from_line_stream does
13 // not own id_name_prefix
14 RectLayer *create_rect_layer(const char *id_name_prefix,
16 RectLayer *create_rect_layer_from_line_stream(
17 LineStream *line_stream,
18 const char *id_name_prefix,
20 RectLayer *chop_rect_layer(Memory *memory,
22 const char *id_name_prefix,
24 void destroy_rect_layer(RectLayer *layer);
26 int rect_layer_render(const RectLayer *layer, const Camera *camera, int active);
27 int rect_layer_event(RectLayer *layer,
28 const SDL_Event *event,
30 UndoHistory *undo_history);
32 int rect_layer_dump_stream(const RectLayer *layer, FILE *filedump);
34 size_t rect_layer_count(const RectLayer *layer);
35 const Rect *rect_layer_rects(const RectLayer *layer);
36 const Color *rect_layer_colors(const RectLayer *layer);
37 const char *rect_layer_ids(const RectLayer *layer);
38 const Action *rect_layer_actions(const RectLayer *layer);
40 #endif // RECT_LAYER_H_