archeus/include/arc/graphics/window.h

45 lines
972 B
C
Raw Normal View History

#ifndef ARC_GRAPHICS_WINDOW_H_
#define ARC_GRAPHICS_WINDOW_H_
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
2023-03-10 17:34:22 -07:00
/**
* @note ARC_WindowType is determined by which window backend you are using
2023-03-10 17:34:22 -07:00
*/
typedef struct ARC_WindowType ARC_Window;
/**
* @note certain parts of ARC_WindowInfo may not be used by your selected backend
*/
typedef struct ARC_WindowInfo {
char *title;
int32_t w;
int32_t h;
} ARC_WindowInfo;
/**
* @brief creates ARC_Window 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
*
* @param window ARC_Window to initialize
* @param info Info on how to create ARC_Window
*/
void ARC_Window_Create(ARC_Window **window, ARC_WindowInfo *info);
/**
* @brief destroys ARC_Window type
*/
void ARC_Window_Destroy(ARC_Window *window);
#ifdef __cplusplus
}
#endif
#endif // !ARC_GRAPHICS_WINDOW_H_