re3/src/skel/win/win.h

92 lines
1.8 KiB
C
Raw Permalink Normal View History

2020-04-26 10:25:03 +00:00
2020-07-24 17:43:51 +00:00
// DON'T include directly. crossplatform.h includes this if you're using D3D9 backend(win.cpp).
2020-04-26 10:25:03 +00:00
#if (!defined(_PLATFORM_WIN_H))
#define _PLATFORM_WIN_H
#if (!defined(RSREGSETBREAKALLOC))
#define RSREGSETBREAKALLOC(_name) /* No op */
#endif /* (!defined(RSREGSETBREAKALLOC)) */
2020-04-21 10:28:06 +00:00
#ifdef __DINPUT_INCLUDED__
2019-06-11 09:30:53 +00:00
/* platform specfic global data */
typedef struct
{
HWND window;
HINSTANCE instance;
RwBool fullScreen;
RwV2d lastMousePos;
DWORD field_14;
LPDIRECTINPUT8 dinterface;
LPDIRECTINPUTDEVICE8 mouse;
LPDIRECTINPUTDEVICE8 joy1;
LPDIRECTINPUTDEVICE8 joy2;
}
psGlobalType;
#define PSGLOBAL(var) (((psGlobalType *)(RsGlobal.ps))->var)
2019-10-27 03:17:30 +00:00
enum eJoypads
{
JOYSTICK1 = 0,
JOYSTICK2,
MAX_JOYSTICKS
};
enum eJoypadState
{
JOYPAD_UNUSED,
JOYPAD_ATTACHED,
};
struct tJoy
{
eJoypadState m_State;
bool m_bInitialised;
bool m_bHasAxisZ;
bool m_bHasAxisR;
int m_nVendorID;
int m_nProductID;
};
class CJoySticks
{
public:
tJoy m_aJoys[MAX_JOYSTICKS];
CJoySticks();
void ClearJoyInfo(int joyID);
};
extern CJoySticks AllValidWinJoys;
2020-04-21 10:28:06 +00:00
#endif
2019-10-27 03:17:30 +00:00
#ifdef __cplusplus
extern "C"
{
#endif /* __cplusplus */
2020-07-24 17:43:51 +00:00
#ifdef __DINPUT_INCLUDED__
2019-06-11 09:30:53 +00:00
HRESULT _InputInitialise();
HRESULT CapturePad(RwInt32 padID);
void _InputAddJoyStick(LPDIRECTINPUTDEVICE8 lpDevice, INT num);
2019-06-11 09:30:53 +00:00
HRESULT _InputAddJoys();
HRESULT _InputGetMouseState(DIMOUSESTATE2 *state);
void _InputShutdown();
BOOL CALLBACK _InputEnumDevicesCallback( const DIDEVICEINSTANCE* pdidInstance, VOID* pContext );
BOOL _InputTranslateKey(RsKeyCodes *rs, UINT flag, UINT key);
BOOL _InputTranslateShiftKey(RsKeyCodes *rs, UINT key, BOOLEAN bDown);
2019-06-11 09:30:53 +00:00
BOOL _InputIsExtended(INT flag);
2020-04-21 10:28:06 +00:00
#endif
2019-06-11 09:30:53 +00:00
void CenterVideo(void);
void CloseClip(void);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* (!defined(_PLATFORM_WIN_H)) */