2009-02-11 20:47:41 +00:00
|
|
|
#include "Global.h"
|
2009-02-11 09:24:56 +00:00
|
|
|
#include "DeviceEnumerator.h"
|
|
|
|
#include "WindowsMessaging.h"
|
|
|
|
#include "DirectInput.h"
|
|
|
|
#include "KeyboardHook.h"
|
|
|
|
#include "RawInput.h"
|
|
|
|
#include "XInput.h"
|
2009-09-12 13:10:17 +00:00
|
|
|
#include "HidDevice.h"
|
|
|
|
#include "DualShock3.h"
|
2009-02-11 09:24:56 +00:00
|
|
|
|
2009-08-06 04:50:55 +00:00
|
|
|
void EnumDevices(int hideDXXinput) {
|
2009-02-11 09:24:56 +00:00
|
|
|
// Needed for enumeration of some device types.
|
|
|
|
dm->ReleaseInput();
|
|
|
|
InputDeviceManager *oldDm = dm;
|
|
|
|
dm = new InputDeviceManager();
|
|
|
|
|
|
|
|
EnumHookDevices();
|
|
|
|
EnumWindowsMessagingDevices();
|
|
|
|
EnumRawInputDevices();
|
2009-09-20 04:14:40 +00:00
|
|
|
EnumDualShock3s();
|
2009-02-11 09:24:56 +00:00
|
|
|
EnumXInputDevices();
|
2009-08-06 04:50:55 +00:00
|
|
|
EnumDirectInputDevices(hideDXXinput);
|
2009-02-11 09:24:56 +00:00
|
|
|
|
|
|
|
dm->CopyBindings(oldDm->numDevices, oldDm->devices);
|
|
|
|
|
|
|
|
delete oldDm;
|
|
|
|
}
|