Archeus 0.0.0
A C library and game engine that focuses on documentation
Loading...
Searching...
No Matches
view.h
Go to the documentation of this file.
1#ifndef ARC_GRAPHICS_VIEW_H_
2#define ARC_GRAPHICS_VIEW_H_
3
4#ifdef __cplusplus
5extern "C" {
6#endif
7
10
15
16/**
17 * @brief a function for ARC_View where contents of the function will be rendered within a view
18 *
19 * @param data data to be used within ARC_View_RenderFn
20 */
21typedef void (* ARC_View_RenderFn)(void *data);
22
23/**
24 * @brief creates ARC_View type
25 *
26 * @param view ARC_View to initialize
27 * @param renderer ARC_Renderer the view will render to
28 * @param bounds ARC_Rect bounds of the view within the renderer
29 */
30void ARC_View_Create(ARC_View **view, ARC_Renderer *renderer, ARC_Rect bounds);
31
32/**
33 * @brief destroys ARC_View type
34 */
36
37/**
38 * @brief renders callbacks contents within an ARC_View
39 *
40 * @param view ARC_View to be renedered to
41 * @param renderFn function which contents will render to given ARC_View
42 * @param data data to be used in renderFn
43 */
44void ARC_View_Render(ARC_View *view, ARC_View_RenderFn renderFn, void *data);
45
46/**
47 * @brief gets bounds from ARC_View type
48 *
49 * @param view ARC_View to get bounds from
50 *
51 * @return bounds of the view
52 */
54
55#ifdef __cplusplus
56}
57#endif
58
59#endif // !ARC_GRAPHICS_VIEW_H_
struct ARC_View ARC_View
ARC_Rect ARC_View_GetBounds(ARC_View *view)
gets bounds from ARC_View type
void ARC_View_Render(ARC_View *view, ARC_View_RenderFn renderFn, void *data)
renders callbacks contents within an ARC_View
void ARC_View_Destroy(ARC_View *view)
destroys ARC_View type
void ARC_View_Create(ARC_View **view, ARC_Renderer *renderer, ARC_Rect bounds)
creates ARC_View type
void(* ARC_View_RenderFn)(void *data)
a function for ARC_View where contents of the function will be rendered within a view
Definition view.h:21
struct ARC_RendererType ARC_Renderer
Definition renderer.h:16
ARC_Renderer * renderer
Definition view.h:12
ARC_Rect bounds
Definition view.h:13