This repository has been archived on 2022-10-27. You can view files and clone it, but cannot push or open issues or pull requests.
InfinitShoot/hazel/hazel.h

30 lines
1.1 KiB
C
Raw Permalink Normal View History

2022-07-29 21:35:46 +08:00
#ifndef __HAZEL_HAZEL_H__
#define __HAZEL_HAZEL_H__
#include "pch.h"
2022-07-31 22:27:19 +08:00
#include "window.h"
#include "renderer.h"
2022-07-29 21:35:46 +08:00
2022-07-31 22:27:19 +08:00
typedef void(*Hazel_BeforeGameStartFunc)(void);
typedef void(*Hazel_GameLoopFunc)(void);
typedef void(*Hazel_BeforeGameQuitFunc)(void);
typedef void(*Hazel_KeyInputFunc)(GLFWwindow*, int, int, int, int);
typedef void(*Hazel_MousePosInputFunc)(GLFWwindow*, double, double);
typedef void(*Hazel_MouseButtonInputFunc)(GLFWwindow*, int, int , int);
2022-07-29 21:35:46 +08:00
2022-07-31 22:27:19 +08:00
DLLEXPORT void Hazel_Init(const char* title, int w, int h);
DLLEXPORT void Hazel_Quit();
DLLEXPORT int Hazel_ShouldClose();
DLLEXPORT void Hazel_Run();
DLLEXPORT void Hazel_RegistGameFuncs(Hazel_BeforeGameStartFunc, Hazel_GameLoopFunc, Hazel_BeforeGameQuitFunc);
DLLEXPORT void Hazel_RegistInputFuncs(Hazel_KeyInputFunc, Hazel_MousePosInputFunc, Hazel_MouseButtonInputFunc);
DLLEXPORT int Hazel_GetKeyState(int key);
DLLEXPORT int Hazel_GetMouseBtnState(int btn);
DLLEXPORT void Hazel_SetCursorPos(double x, double y);
DLLEXPORT void Hazel_GetMousePos(double* x, double* y);
DLLEXPORT double Hazel_GetTime();
DLLEXPORT void Hazel_HideCursor();
DLLEXPORT void Hazel_ShowCursor();
#endif