2006-06-15 04:19:30 +00:00
|
|
|
#ifndef _PH_DIRECTINPUT_H_
|
|
|
|
#define _PH_DIRECTINPUT_H_
|
|
|
|
|
2008-08-24 21:28:42 +00:00
|
|
|
#include "directinput/Manager.h"
|
2008-01-24 01:37:47 +00:00
|
|
|
#include "Types.h"
|
2008-08-24 21:28:42 +00:00
|
|
|
#include "SettingsDialogProvider.h"
|
2006-07-13 02:44:13 +00:00
|
|
|
#include "../PadHandler.h"
|
2008-08-24 21:28:42 +00:00
|
|
|
#include "../ControllerInfo.h"
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2008-08-24 21:28:42 +00:00
|
|
|
class CPH_DirectInput : public CPadHandler, public CSettingsDialogProvider
|
2006-06-15 04:19:30 +00:00
|
|
|
{
|
|
|
|
public:
|
2008-08-24 21:28:42 +00:00
|
|
|
CPH_DirectInput(HWND);
|
|
|
|
virtual ~CPH_DirectInput();
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2008-08-24 21:28:42 +00:00
|
|
|
void Update(uint8*);
|
|
|
|
DirectInput::CManager* GetManager() const;
|
|
|
|
|
|
|
|
virtual Framework::Win32::CModalWindow* CreateSettingsDialog(HWND);
|
|
|
|
virtual void OnSettingsDialogDestroyed();
|
|
|
|
|
|
|
|
static FactoryFunction GetFactoryFunction(HWND);
|
2006-06-15 04:19:30 +00:00
|
|
|
|
|
|
|
private:
|
2008-08-24 21:28:42 +00:00
|
|
|
static CPadHandler* PadHandlerFactory(HWND);
|
|
|
|
void Initialize();
|
|
|
|
void ProcessEvents(PS2::CControllerInfo::BUTTON, uint32, uint8*);
|
|
|
|
|
|
|
|
DirectInput::CManager* m_manager;
|
2006-06-15 04:19:30 +00:00
|
|
|
|
2008-08-24 21:28:42 +00:00
|
|
|
HWND m_hWnd;
|
2006-06-15 04:19:30 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|