This repository has been archived by the owner on Dec 31, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
IProxyDirectInputDevice8.h
71 lines (65 loc) · 3.06 KB
/
IProxyDirectInputDevice8.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
/* Fixes for GTA:SA
*
* Copyright (c) bartekdvd, 2014
*
* This software is provided "as-is", without any express or implied warranty.
* In no event will the authors be held liable for any damages arising from
* the use of this software.
*
* Permission is granted to anyone to use this software for any purpose,
* including commercial applications, and to alter it and redistribute it
* freely, subject to the following restrictions:
*
* 1. The origin of this software must not be misrepresented; you must not
* claim that you wrote the original software. If you use this software in
* a product, an acknowledgment in the product documentation would be
* appreciated but is not required.
* 2. Altered source versions must be plainly marked as such, and must not be
* misrepresented as being the original software.
* 3. This notice may not be removed or altered from any source distribution.
*/
#ifndef _IPROXYDIRECTINPUTDEVICE8_H
#define _IPROXYDIRECTINPUTDEVICE8_H
class IProxyDirectInputDevice8 : public IDirectInputDevice8
{
public:
IProxyDirectInputDevice8(IDirectInputDevice8*);
~IProxyDirectInputDevice8();
/*** IUnknown methods ***/
STDMETHOD(QueryInterface)(THIS_ REFIID riid, LPVOID * ppvObj);
STDMETHOD_(ULONG, AddRef)(THIS);
STDMETHOD_(ULONG, Release)(THIS);
/*** IDirectInputDevice8A methods ***/
STDMETHOD(GetCapabilities)(THIS_ LPDIDEVCAPS);
STDMETHOD(EnumObjects)(THIS_ LPDIENUMDEVICEOBJECTSCALLBACKA, LPVOID, DWORD);
STDMETHOD(GetProperty)(THIS_ REFGUID, LPDIPROPHEADER);
STDMETHOD(SetProperty)(THIS_ REFGUID, LPCDIPROPHEADER);
STDMETHOD(Acquire)(THIS);
STDMETHOD(Unacquire)(THIS);
STDMETHOD(GetDeviceState)(THIS_ DWORD, LPVOID);
STDMETHOD(GetDeviceData)(THIS_ DWORD, LPDIDEVICEOBJECTDATA, LPDWORD, DWORD);
STDMETHOD(SetDataFormat)(THIS_ LPCDIDATAFORMAT);
STDMETHOD(SetEventNotification)(THIS_ HANDLE);
STDMETHOD(SetCooperativeLevel)(THIS_ HWND, DWORD);
STDMETHOD(GetObjectInfo)(THIS_ LPDIDEVICEOBJECTINSTANCEA, DWORD, DWORD);
STDMETHOD(GetDeviceInfo)(THIS_ LPDIDEVICEINSTANCEA);
STDMETHOD(RunControlPanel)(THIS_ HWND, DWORD);
STDMETHOD(Initialize)(THIS_ HINSTANCE, DWORD, REFGUID);
STDMETHOD(CreateEffect)(THIS_ REFGUID, LPCDIEFFECT, LPDIRECTINPUTEFFECT *, LPUNKNOWN);
STDMETHOD(EnumEffects)(THIS_ LPDIENUMEFFECTSCALLBACKA, LPVOID, DWORD);
STDMETHOD(GetEffectInfo)(THIS_ LPDIEFFECTINFOA, REFGUID);
STDMETHOD(GetForceFeedbackState)(THIS_ LPDWORD);
STDMETHOD(SendForceFeedbackCommand)(THIS_ DWORD);
STDMETHOD(EnumCreatedEffectObjects)(THIS_ LPDIENUMCREATEDEFFECTOBJECTSCALLBACK, LPVOID, DWORD);
STDMETHOD(Escape)(THIS_ LPDIEFFESCAPE);
STDMETHOD(Poll)(THIS);
STDMETHOD(SendDeviceData)(THIS_ DWORD, LPCDIDEVICEOBJECTDATA, LPDWORD, DWORD);
STDMETHOD(EnumEffectsInFile)(THIS_ LPCSTR, LPDIENUMEFFECTSINFILECALLBACK, LPVOID, DWORD);
STDMETHOD(WriteEffectToFile)(THIS_ LPCSTR, DWORD, LPDIFILEEFFECT, DWORD);
STDMETHOD(BuildActionMap)(THIS_ LPDIACTIONFORMATA, LPCSTR, DWORD);
STDMETHOD(SetActionMap)(THIS_ LPDIACTIONFORMATA, LPCSTR, DWORD);
STDMETHOD(GetImageInfo)(THIS_ LPDIDEVICEIMAGEINFOHEADERA);
private:
IDirectInputDevice8* pIDID8;
};
#endif