4 #include "math/point.h"
10 typedef struct PointLayer PointLayer;
11 typedef struct LineStream LineStream;
13 LayerPtr point_layer_as_layer(PointLayer *point_layer);
14 // NOTE: create_point_layer and create_point_layer_from_line_stream do
15 // not own id_name_prefix
16 PointLayer *create_point_layer(const char *id_name_prefix);
17 PointLayer *create_point_layer_from_line_stream(LineStream *line_stream,
18 const char *id_name_prefix);
19 void destroy_point_layer(PointLayer *point_layer);
21 int point_layer_render(const PointLayer *point_layer,
24 int point_layer_event(PointLayer *point_layer,
25 const SDL_Event *event,
27 UndoHistory *undo_history);
29 int point_layer_dump_stream(const PointLayer *point_layer,
32 size_t point_layer_count(const PointLayer *point_layer);
33 const Point *point_layer_positions(const PointLayer *point_layer);
34 const Color *point_layer_colors(const PointLayer *point_layer);
35 const char *point_layer_ids(const PointLayer *point_layer);
37 #endif // POINT_LAYER_H_