summaryrefslogtreecommitdiffstats
path: root/src/osd/modules/input/input_rawinput.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/osd/modules/input/input_rawinput.cpp')
-rw-r--r--src/osd/modules/input/input_rawinput.cpp36
1 files changed, 19 insertions, 17 deletions
diff --git a/src/osd/modules/input/input_rawinput.cpp b/src/osd/modules/input/input_rawinput.cpp
index e023ca6eab3..248b7bb48ab 100644
--- a/src/osd/modules/input/input_rawinput.cpp
+++ b/src/osd/modules/input/input_rawinput.cpp
@@ -16,9 +16,9 @@
#include <tchar.h>
#undef interface
-#include <mutex>
-#include <functional>
#include <algorithm>
+#include <functional>
+#include <mutex>
// MAME headers
#include "emu.h"
@@ -274,8 +274,8 @@ private:
HANDLE m_handle = nullptr;
public:
- rawinput_device(running_machine &machine, const char *name, const char *id, input_device_class deviceclass, input_module &module) :
- event_based_device(machine, name, id, deviceclass, module)
+ rawinput_device(running_machine &machine, std::string &&name, std::string &&id, input_device_class deviceclass, input_module &module) :
+ event_based_device(machine, std::move(name), std::move(id), deviceclass, module)
{
}
@@ -292,8 +292,8 @@ class rawinput_keyboard_device : public rawinput_device
public:
keyboard_state keyboard;
- rawinput_keyboard_device(running_machine &machine, const char *name, const char *id, input_module &module) :
- rawinput_device(machine, name, id, DEVICE_CLASS_KEYBOARD, module),
+ rawinput_keyboard_device(running_machine &machine, std::string &&name, std::string &&id, input_module &module) :
+ rawinput_device(machine, std::move(name), std::move(id), DEVICE_CLASS_KEYBOARD, module),
keyboard({{0}})
{
}
@@ -328,8 +328,8 @@ private:
public:
mouse_state mouse;
- rawinput_mouse_device(running_machine &machine, const char *name, const char *id, input_module &module) :
- rawinput_device(machine, name, id, DEVICE_CLASS_MOUSE, module),
+ rawinput_mouse_device(running_machine &machine, std::string &&name, std::string &&id, input_module &module) :
+ rawinput_device(machine, std::move(name), std::move(id), DEVICE_CLASS_MOUSE, module),
mouse({0})
{
}
@@ -388,8 +388,8 @@ private:
public:
mouse_state lightgun;
- rawinput_lightgun_device(running_machine &machine, const char *name, const char *id, input_module &module) :
- rawinput_device(machine, name, id, DEVICE_CLASS_LIGHTGUN, module),
+ rawinput_lightgun_device(running_machine &machine, std::string &&name, std::string &&id, input_module &module) :
+ rawinput_device(machine, std::move(name), std::move(id), DEVICE_CLASS_LIGHTGUN, module),
lightgun({0})
{
}
@@ -545,17 +545,17 @@ protected:
std::wstring name = rawinput_device_improve_name(tname.get());
// convert name to utf8
- std::string utf8_name = osd::text::from_wstring(name.c_str());
+ std::string utf8_name = osd::text::from_wstring(name);
// set device id to raw input name
std::string utf8_id = osd::text::from_wstring(tname.get());
- TDevice *devinfo = devicelist()->create_device<TDevice>(machine, utf8_name.c_str(), utf8_id.c_str(), *this);
+ TDevice &devinfo = devicelist()->create_device<TDevice>(machine, std::move(utf8_name), std::move(utf8_id), *this);
// Add the handle
- devinfo->set_handle(rawinputdevice->hDevice);
+ devinfo.set_handle(rawinputdevice->hDevice);
- return devinfo;
+ return &devinfo;
}
bool handle_input_event(input_event eventid, void *eventdata) override
@@ -658,7 +658,7 @@ protected:
std::string name = osd::text::from_wstring(keyname);
// add the item to the device
- devinfo->device()->add_item(name.c_str(), itemid, generic_button_get_state<std::uint8_t>, &devinfo->keyboard.state[keynum]);
+ devinfo->device()->add_item(name, itemid, generic_button_get_state<std::uint8_t>, &devinfo->keyboard.state[keynum]);
}
}
};
@@ -764,11 +764,13 @@ protected:
} // anonymous namespace
-#else
+#else // defined(OSD_WINDOWS)
+
MODULE_NOT_SUPPORTED(keyboard_input_rawinput, OSD_KEYBOARDINPUT_PROVIDER, "rawinput")
MODULE_NOT_SUPPORTED(mouse_input_rawinput, OSD_MOUSEINPUT_PROVIDER, "rawinput")
MODULE_NOT_SUPPORTED(lightgun_input_rawinput, OSD_LIGHTGUNINPUT_PROVIDER, "rawinput")
-#endif
+
+#endif // defined(OSD_WINDOWS)
MODULE_DEFINITION(KEYBOARDINPUT_RAWINPUT, keyboard_input_rawinput)
MODULE_DEFINITION(MOUSEINPUT_RAWINPUT, mouse_input_rawinput)