/
vTech
/
FcApps
Обзор
Документация
Войти
/
vTech
/
FcApps
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
FcLibs/FcWindow/src/FcWindowGL/FcWindowGL_WINAPI/FcWindowGL_WINAPI.h
79 строк
4 KB
vTech
alpha_00
03 дек 2025, 17:45
03 дек 2025, 17:45
ab8382d
Код
Авторство
О чём код?
#if defined(_WIN32) || defined(_WIN64) #ifndef __FCWINDOWGL_WINAPI_H__ #define __FCWINDOWGL_WINAPI_H__ #include "../../FcWindow/FcWindow_config.h" #include "../FcWindowGL/FcWindowGL_DrawQueue.h" typedef struct FcWindowGL_WINAPI_t FcWindowGL_WINAPI_t; typedef void (APIENTRYP PFNFCWINDOWGLCALLBACKPROC)(FcWindowGL_WINAPI_t* pWindow, void* data_0, void* data_1, void* data_2); typedef size_t (APIENTRYP PFNFCWINDOWGLDRAWCALLBACKPROC)(FcWindowGL_WINAPI_t* pWindow, void* data_0, void* data_1, void *data_2); typedef size_t (APIENTRYP PFNFCWINDOWGLPUSHGRAPHICSQUEUEPROC)(FcWindowGL_WINAPI_t* pWindow, void* data); struct FcWindowGL_WINAPI_t { FcPlatform_WINAPI_t *mPlatform_WINAPI; FcPlatform_GL_t *mPlatform_GL; FcGL_Context_Window_t mContext; HWND mWindow; UINT mWidth; UINT mHeight; UINT mMouseX; UINT mMouseY; UINT mWidthClient; UINT mHeightClient; UINT mMouseStatus; UINT mHideCursor; UINT_PTR mTimer1; FcWindowGL_DrawQueue_t mDrawQueue; WINDOWPLACEMENT mWindowPlace_Prev; void (*mCallbackKeyboard)(unsigned int keyCode, unsigned int keyEvent, void* data_0, void* data_1); void (*mCallbackMouse)(unsigned int x, unsigned int y, unsigned int mouseKeyCode, void* data_0); void (*mCallbackResizeWindow)(unsigned int width, unsigned int height, void* data_0, void* data_1); PFNFCWINDOWGLCALLBACKPROC mCallbackTimer1Window; PFNFCWINDOWGLDRAWCALLBACKPROC mDraw; void* mDataMouseCallback; void* mDataKeyboardCallback[2]; void* mDataResizeCallback[2]; void* mTimer1Data[3]; void* mDrawData[3]; UINT mFullscreen ; }; FCDEF FcWindow_Error_t FcWindowGL_WINAPI(FcPlatform_WINAPI_t* pPlatform_WINAPI, FcPlatform_GL_t* pPlatform_GL, FcWindowGL_WINAPI_t* pWindow, FcWindow_config_t* pConfig); FCDEF size_t FcWindowGL_WINAPI_getWindowDPI(const FcWindowGL_WINAPI_t* pWindow); FCDEF size_t FcWindowGL_WINAPI_getHeight(const FcWindowGL_WINAPI_t* pWindow); FCDEF size_t FcWindowGL_WINAPI_getWidth(const FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_dispatch(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_free(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_fullscreen(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_setTitle(FcWindowGL_WINAPI_t* pWindow, const TCHAR* pText); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_show(FcWindowGL_WINAPI_t* pWindow); FCDEF void FcWindowGL_WINAPI_setCallbackResizeWindow(FcWindowGL_WINAPI_t* pWindow, void (*callbackResizeWindow)(unsigned int width, unsigned int height, void* data_0, void* data_1), void* data_0, void* data_1); FCDEF void FcWindowGL_WINAPI_setCallbackKeyboard(FcWindowGL_WINAPI_t* pWindow, void (*callbackKeyboard)(unsigned int keyCode, unsigned int keyEvent, void* data_1, void* data_2), void* data_0, void* data_1); FCDEF void FcWindowGL_WINAPI_setCallbackMouse(FcWindowGL_WINAPI_t* pWindow, void (*callbackMouse)(unsigned int x, unsigned int y, unsigned int mouseKeyCode, void* data_0), void* data_0); FCDEF void FcWindowGL_WINAPI_setDraw(FcWindowGL_WINAPI_t* pWindow, PFNFCWINDOWGLDRAWCALLBACKPROC callbackDrawWindow, void* data_0, void* data_1, void* data_2); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_hideCursor(FcWindowGL_WINAPI_t *pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_setCursorPosition(FcWindowGL_WINAPI_t *pWindow, size_t x, size_t y); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_vSync_Enable(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_vSync_Disable(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_vSync_Adaptive(FcWindowGL_WINAPI_t* pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_GraphicsQueue_Callback_free(FcWindowGL_WINAPI_t *pWindow); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_GraphicsQueue_setErrorFunction(FcWindowGL_WINAPI_t* pWindow, int (*pFunction)(size_t error, void* data), void* data); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_GraphicsQueue_push(FcWindowGL_WINAPI_t* pWindow, size_t(*pFunction)(FcWindowGL_WINAPI_t* pWindow, void* data), void* data); FCDEF FcWindow_Error_t FcWindowGL_WINAPI_GraphicsQueue_pushCallback(FcWindowGL_WINAPI_t* pWindow, size_t(*pFunction)(FcWindowGL_WINAPI_t* pWindow, void* data), void* data); #endif //__FCWINDOWGL_WINAPI_H__ #endif //WIN32