2019-12-11 00:51:42 -05:00
|
|
|
#pragma once
|
|
|
|
|
#ifndef __GPAPP_INTERFACE_H__
|
|
|
|
|
#define __GPAPP_INTERFACE_H__
|
|
|
|
|
|
|
|
|
|
#include "HostSuspendHook.h"
|
|
|
|
|
#include <stdint.h>
|
|
|
|
|
|
2020-11-25 12:05:59 -05:00
|
|
|
#include "GpDriverIndex.h"
|
|
|
|
|
|
2019-12-11 00:51:42 -05:00
|
|
|
#ifdef GP_APP_DLL
|
|
|
|
|
|
|
|
|
|
#ifdef GP_APP_DLL_EXPORT
|
|
|
|
|
#define GP_APP_DLL_EXPORT_API extern "C" __declspec(dllexport)
|
|
|
|
|
#else
|
|
|
|
|
#define GP_APP_DLL_EXPORT_API extern "C" __declspec(dllimport)
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#else
|
|
|
|
|
|
|
|
|
|
#define GP_APP_DLL_EXPORT_API extern "C"
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
2020-01-20 05:14:35 -05:00
|
|
|
struct IGpAudioDriver;
|
2020-05-29 21:56:33 -04:00
|
|
|
struct IGpLogDriver;
|
2020-07-03 02:46:43 -04:00
|
|
|
struct IGpInputDriver;
|
2020-09-12 14:01:51 -04:00
|
|
|
struct IGpFontHandler;
|
2020-11-25 12:05:59 -05:00
|
|
|
struct GpDriverCollection;
|
2019-12-11 00:51:42 -05:00
|
|
|
|
2019-12-21 18:40:17 -05:00
|
|
|
struct IGpDisplayDriver;
|
|
|
|
|
|
2019-12-11 00:51:42 -05:00
|
|
|
class GpAppInterface
|
|
|
|
|
{
|
|
|
|
|
public:
|
2021-03-29 21:41:11 -04:00
|
|
|
GP_ASYNCIFY_PARANOID_VIRTUAL void ApplicationInit() GP_ASYNCIFY_PARANOID_PURE;
|
|
|
|
|
GP_ASYNCIFY_PARANOID_VIRTUAL int ApplicationMain() GP_ASYNCIFY_PARANOID_PURE;
|
2019-12-11 00:51:42 -05:00
|
|
|
virtual void PL_IncrementTickCounter(uint32_t count) = 0;
|
2019-12-21 18:40:17 -05:00
|
|
|
virtual void PL_Render(IGpDisplayDriver *displayDriver) = 0;
|
2020-11-25 12:05:59 -05:00
|
|
|
virtual GpDriverCollection *PL_GetDriverCollection() = 0;
|
2020-01-20 05:14:35 -05:00
|
|
|
|
2020-04-18 00:18:20 -04:00
|
|
|
virtual bool PL_AdjustRequestedResolution(uint32_t &physicalWidth, uint32_t &physicalHeight, uint32_t &virtualWidth, uint32_t &virtualheight, float &pixelScaleX, float &pixelScaleY) = 0;
|
2019-12-11 00:51:42 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
GP_APP_DLL_EXPORT_API GpAppInterface *GpAppInterface_Get();
|
|
|
|
|
|
|
|
|
|
#endif
|