Rename GP_Context -> GP_Pixmap
[gfxprim.git] / demos / bogoman / bogoman_render.h
blob38b7f0d59722dd4d4c326b6bfffce49f5c1bf898
1 /*****************************************************************************
2 * This file is part of gfxprim library. *
3 * *
4 * Gfxprim is free software; you can redistribute it and/or *
5 * modify it under the terms of the GNU Lesser General Public *
6 * License as published by the Free Software Foundation; either *
7 * version 2.1 of the License, or (at your option) any later version. *
8 * *
9 * Gfxprim is distributed in the hope that it will be useful, *
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
12 * Lesser General Public License for more details. *
13 * *
14 * You should have received a copy of the GNU Lesser General Public *
15 * License along with gfxprim; if not, write to the Free Software *
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
17 * Boston, MA 02110-1301 USA *
18 * *
19 * Copyright (C) 2009-2015 Cyril Hrubis <metan@ucw.cz> *
20 * *
21 *****************************************************************************/
23 #ifndef __BOGOMAN_RENDER_H__
24 #define __BOGOMAN_RENDER_H__
26 struct bogoman_map;
27 struct GP_Pixmap;
29 struct bogoman_render {
30 /* both in map elements */
31 unsigned int map_x_offset;
32 unsigned int map_y_offset;
34 /* current map */
35 struct bogoman_map *map;
37 /* pixmap to be used for rendering */
38 struct GP_Pixmap *pixmap;
40 /* if not NULL is used to update screen */
41 struct GP_Backend *backend;
43 /* elem size in pixels */
44 unsigned int map_elem_size;
47 enum bogonam_render_flags {
48 /* renders all map elements, not only dirty ones */
49 BOGOMAN_RENDER_ALL = 0x01,
50 BOGOMAN_RENDER_DIRTY = 0x02,
53 void bogoman_render(struct bogoman_render *render, int flags);
55 #endif /* __BOGOMAN_RENDER_H__ */