XInput_Scp/X360Controller.h (23 lines of code) (raw):
#pragma once
class CX360Controller : public CSCPController
{
public:
static const DWORD CollectionSize = 1;
protected:
XINPUT_STATE m_State;
public:
CX360Controller(DWORD dwIndex);
virtual BOOL Open(void);
virtual BOOL Close(void);
virtual DWORD GetState(DWORD dwUserIndex, XINPUT_STATE* pState);
virtual DWORD SetState(DWORD dwUserIndex, XINPUT_VIBRATION* pVibration);
virtual DWORD GetCapabilities(DWORD dwUserIndex, DWORD dwFlags, XINPUT_CAPABILITIES* pCapabilities);
virtual DWORD GetDSoundAudioDeviceGuids(DWORD dwUserIndex, GUID* pDSoundRenderGuid, GUID* pDSoundCaptureGuid);
virtual DWORD GetBatteryInformation(DWORD dwUserIndex, BYTE devType, XINPUT_BATTERY_INFORMATION* pBatteryInformation);
virtual DWORD GetKeystroke(DWORD dwUserIndex, DWORD dwReserved, PXINPUT_KEYSTROKE pKeystroke);
virtual DWORD GetExtended(DWORD dwUserIndex, SCP_EXTN *Pressure);
// UNDOCUMENTED
virtual DWORD GetStateEx(DWORD dwUserIndex, XINPUT_STATE *pState);
virtual DWORD WaitForGuideButton(DWORD dwUserIndex, DWORD dwFlag, LPVOID pVoid);
virtual DWORD CancelGuideButtonWait(DWORD dwUserIndex);
virtual DWORD PowerOffController(DWORD dwUserIndex);
};