2022-10-29 00:22:23 -06:00
|
|
|
#ifndef ARC_GRAPHICS_RENDERER_H_
|
|
|
|
|
#define ARC_GRAPHICS_RENDERER_H_
|
|
|
|
|
|
2022-10-29 16:08:41 -06:00
|
|
|
#ifdef __cplusplus
|
|
|
|
|
extern "C" {
|
|
|
|
|
#endif
|
|
|
|
|
|
2022-10-29 00:22:23 -06:00
|
|
|
typedef struct ARC_Renderer ARC_Renderer;
|
|
|
|
|
|
|
|
|
|
typedef struct ARC_RenderInfo ARC_RenderInfo;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief creates ARC_Renderer type
|
|
|
|
|
*
|
|
|
|
|
* @note the parameter data is determined by which graphics library you are using
|
|
|
|
|
* please refer to the graphics library section to see what needs to be passed
|
|
|
|
|
*
|
2022-10-29 16:08:41 -06:00
|
|
|
* @param renderer ARC_Renderer to initialize
|
|
|
|
|
* @param info Info on how to create ARC_Window
|
2022-10-29 00:22:23 -06:00
|
|
|
*/
|
2022-11-11 01:15:33 -07:00
|
|
|
void ARC_Renderer_Create(ARC_Renderer **renderer, ARC_RenderInfo *info);
|
2022-10-29 00:22:23 -06:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @brief destroys ARC_Renderer type
|
2022-10-29 16:08:41 -06:00
|
|
|
*
|
|
|
|
|
* @param renderer ARC_Renderer to destory
|
2022-10-29 00:22:23 -06:00
|
|
|
*/
|
|
|
|
|
void ARC_Renderer_Destroy(ARC_Renderer *renderer);
|
|
|
|
|
|
2022-10-29 16:08:41 -06:00
|
|
|
void ARC_Renderer_Clear(ARC_Renderer *renderer);
|
|
|
|
|
|
2022-10-29 17:07:51 -06:00
|
|
|
void ARC_Renderer_Render(ARC_Renderer *renderer);
|
2022-10-29 16:08:41 -06:00
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
|
}
|
|
|
|
|
#endif
|
|
|
|
|
|
2022-10-29 00:22:23 -06:00
|
|
|
#endif // !ARC_GRAPHICS_RENDERER_H_
|