36 lines
812 B
C
36 lines
812 B
C
#ifndef ARC_ENGINE_H_
|
|
#define ARC_ENGINE_H_
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
#include "arc/graphics/window.h"
|
|
#include "arc/graphics/renderer.h"
|
|
#include "arc/std/handler.h"
|
|
|
|
typedef struct ARC_EngineData {
|
|
ARC_Window *window;
|
|
ARC_Renderer *renderer;
|
|
ARC_Handler *state;
|
|
} ARC_EngineData;
|
|
|
|
//NOTE: most work below is temp, and will change once I figure out a better way to write this header
|
|
|
|
void ARC_EngineData_Create(ARC_EngineData **data);
|
|
void ARC_EngineData_Destroy(ARC_EngineData *data);
|
|
|
|
/**
|
|
* @brief runs ARC_Engine
|
|
*
|
|
* @param data engine data that will be used
|
|
* data must be created before this function
|
|
* and must be destroyed after this function
|
|
*/
|
|
void ARC_Engine_Run(ARC_EngineData *data);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif // !ARC_ENGINE_H_
|