From 31774153c0e940dd0e3f00fc34ec72f9fa35a636 Mon Sep 17 00:00:00 2001 From: Ingo Ruhnke <grumbel@gmx.de> Date: Tue, 25 Jan 2011 05:10:48 +0100 Subject: [PATCH] Some TODO cleanup --- TODO | 455 ++---------------------------------------------- src/xboxdrv.cpp | 3 +- src/xboxdrv.hpp | 5 +- 3 files changed, 16 insertions(+), 447 deletions(-) diff --git a/TODO b/TODO index ffbed82..819f373 100644 --- a/TODO +++ b/TODO @@ -1,5 +1,5 @@ -slPre Release Testing: -===================== +Pre Release Testing: +==================== * check the version number @@ -48,6 +48,7 @@ Stuff to do before 0.7.0 release: debug: only shown when --debug is given info: shown when --verbose is given + // need something inbetween!? warn: shown by default error: shown by default @@ -58,7 +59,8 @@ Stuff to do before 0.7.0 release: * fix the FIXME's -* fix event output (have it pre-modifier or post-modifier?) +* fix event output (have it pre-modifier or post-modifier?), don't + output on daemon use (ever?!) * need to hide/disable the toggle button from the UIButtonmap @@ -75,8 +77,6 @@ Daemon Related Stuff * fix --no-uinput -* uinput must be thread safe - * implement --on-connect and --on-disconnect for the daemon - maybe have a more general event interface that allows to run stuff on configuration changes, controller plug-ins, etc. (notifiy area as example) @@ -85,8 +85,6 @@ Daemon Related Stuff * handle multiple controllers in a sane manner (requires cloning of modifier maps, also auto increment of "auto" device id's) -* add: void Uinput::send(XboxGenericMsg& msg, int controller_slot = 0); - * need magic to assign controller to a slot: what: match product/vendor-id, match device name @@ -101,7 +99,6 @@ Daemon Related Stuff 1.auto-BTN_MIDDLE auto-BTN_MIDDLE - List Output =========== @@ -242,16 +239,9 @@ Stuff to do before 0.7.x release: ./xboxdrv-dualstrike \ --ui-clear \ --ui-buttonmap rb=key:1-BTN_LEFT,lb=key:1-BTN_RIGHT \ - --ui-axismap x2^cal:-25000:0:25000=abs:1-ABS_X,y2^cal:-25000:0:25000=abs:1-ABS_Y + --ui-axismap x2^cal:-25000:0:25000=abs:1-ABS_X,y2^cal:-25000:0:25000=abs:1-ABS_Y \ --ui-axismap x1=KEY_LEFT:KEY_RIGHT,y1=KEY_DOWN:KEY_UP -s -* limit --four-way-restrictor to a single stick, use a standard - logical notatino for a single stick that is rusable for other means: - - --four-way-restrictor X-Y,X1-Y2 - --four-way-restrictor XY,X2:Y2 - --four-way-restrictor X/Y,X2/Y2 - Chatpad ======= @@ -311,16 +301,16 @@ http://www.mp3car.com/vbulletin/input-devices/108554-xbox360-chatpad-awsome-back * Not implementable as they need more then one axis: squareaxis, four-way-restrictor, dpad-rotation -* "couldn't convert 'ABS_y' to enum, not a member of EV_ABS" - - convert all enum names to uppercase? or does that lead to conflicts in the naming? - * support for Playstation button names maybe? cross, triangle, circle, square, R3, L3, ...? -Stuff to do before 0.7.0 release: +Stuff to do before 0.7.x release: ================================= +* "couldn't convert 'ABS_y' to enum, not a member of EV_ABS" + + convert all enum names to uppercase? or does that lead to conflicts in the naming? + * add extra checks to make sure the evdev buttons and axis given exist on the current device * make dummy joystick axis creation optional @@ -433,30 +423,19 @@ Blue X +18500 Orange LB1 +32767 (None) (None) -300 -* get rid of guitar, merge into xbox360 - * send FF status reports (maybe, is that used by anything?) * figure out the max values of force feedback effects so that stuff is mapped more properly (kind of done, could need verification) -* add --detach option that detaches any existing driver (needed for - gamepads that use HID) - * figure out which devices xorg/hal handles as keyboard and how to make it always happen, seems to require two keyboard keys, devices with only one aren't registered -* display ui-buttonmap in the configuration overview, tricky since we - don't differ between default bindings and user created ones, also - which bindings get used depends on other configuration options - * report more precisly what devices got created, include device name (HAL has that information) * add support for LED messages (can this be used by anything?) -* add support for analog buttons (not all that useful, but would still be nice to have) - * include id/wid in device name (would be cleaner, since it makes the device unique, but would make Xorg trouble worse) @@ -471,417 +450,5 @@ http://lists.libsdl.org/pipermail/sdl-libsdl.org/2007-March/060263.html - send output to file or so usb -d 005:006 -c 5:in,5:out,6:in,7:in,8:out -o /tmp/out, else stdin -Daemon Mode: -SYSFS{idVendor}=="045e", SYSFS{idProduct}=="028e", RUN+="/home/ingo/projects/xboxdrv/trunk/xboxdrv --daemon" -Unpluging doesn't work and causes xboxdrv processing running amok - -Pictures of Xbox360 and controller: -http://g-prime.net/x360/ - -Add examples to Readme for specific games - -Use cases: -========== -* flightsim: - expects: X/Y Rudder Throttle - XBox: Left-Stick LT+RT Right-Stick(rel) - -* FPS: - expects: Mouse-X/Y Walk-X/Y Trigger - XBox: Left-Stick RickStick Trigger(btn) - -* 2D Jump Run (done) - needs dpad first - - -FIX: -===== - filter auto known unknown messages - uinput name should be configurable - uinput busid/devid shouldn't be hardcoded - -Battery warning: LEDs 1,4 then 2,3 over and over ~10 times rapidly - -* a way to send keyboard combination sequences or more general event sequences -* abs input must be normalized to min/max -* rel input must be scaleable -* Cleanup naming conventions - -sending rumble is slow and delayed, gets buffered up - -* examples in doc for --dpad as buttons and other options - -Figure out: -=========== -Unknown data: bytes: 3 Data: 0x01 0x03 0x0e -Unknown data: bytes: 3 Data: 0x02 0x03 0x00 -Unknown data: bytes: 3 Data: 0x03 0x03 0x03 -Unknown data: bytes: 3 Data: 0x08 0x03 0x00 -Unknown data: bytes: 3 Data: 0x01 0x03 0x00 - -Different Computer/Pad: -Unknown data: bytes: 3 Data: 0x01 0x03 0x0e -Unknown data: bytes: 3 Data: 0x02 0x03 0x00 -Unknown data: bytes: 3 Data: 0x03 0x03 0x03 -Unknown data: bytes: 3 Data: 0x08 0x03 0x00 -Unknown data: bytes: 3 Data: 0x01 0x03 0x00 - - /* Happens with XBox360 Controller sometimes - Unknown data: bytes: 3 Data: 0x01 0x03 0x0e - Unknown data: bytes: 3 Data: 0x02 0x03 0x00 - Unknown data: bytes: 3 Data: 0x03 0x03 0x03 - Unknown data: bytes: 3 Data: 0x08 0x03 0x00 - -- different session: - Unknown data: bytes: 3 Data: 0x01 0x03 0x0e - Unknown data: bytes: 3 Data: 0x02 0x03 0x00 - Unknown data: bytes: 3 Data: 0x03 0x03 0x03 - Unknown data: bytes: 3 Data: 0x08 0x03 0x00 - Unknown data: bytes: 3 Data: 0x01 0x03 0x06 - - */ - ------ -Guitar: - -Tilt Sensor: is mapped to the second axis of S2, to LT and RT (three parts) -- Range for 2nd axis of S2 : -32768 when guitar is straight down and 32767 when she is straight up. -- Range for LT : ~200 not very precise and ~60 at min. -- Range for RT : ~190 not very precise and ~55 at min. - - dummy should stay mostly 0, except the position five and six, which - are the LT/RT trigger. We can either just ignore them or you can try - to find out if they have any meaning. - - -They control guitar rotation, hmm hard to explain, it's when I rotate the guitar in front of me, it detects if the guitar is in the correct position. ------ - -* Question: Firestorm Dual Power: How to get rumble to work when there is no endpoint to send data to? - -* Guitar Hero Controller: - - lsusb -v output looks like a XBox360 controller - - usbcat looks like an XBox360 controller - - it doesn't report events - -http://forums.gentoo.org/viewtopic-p-5061825.html -http://gentoo-wiki.com/HOWTO_Xbox_360_controller_on_Linux -http://happypenguin.org/show?xboxdrv -http://ubuntuforums.org/showthread.php?t=404577&page=16 -http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/OsxDriver - - - WirelessHIDDevice::receivedMessage(IOMemoryDescriptor *data) - -* wireless reports battery level - -* disconnecting the pad in use will just let the driver wait forever - for new data, any way we can catch a disconnect? - -* a way to configure the deadzone for axis (might be needed for some games) - -* Add support for dancepad/mats (should just mean cleanup up the - buttons/axis not provided by the dancepad/mat) - -New Command Line Options: - ---button-map BTN - - BTN is a list of integers, where each integer corresponds to the - event that gets send - - A,B,X,Y,LB,RB,SL,SR,LT,RT,Start,Mode,Back,DPAD-UP,DPAD-DOWN,DPAD-LEFT,DPAD-RIGHT - A,B,X,Y,TL2,TR2,TL,TR, - -#define BTN_A 0x130 -#define BTN_B 0x131 -#define BTN_C 0x132 -#define BTN_X 0x133 -#define BTN_Y 0x134 -#define BTN_Z 0x135 -#define BTN_TL 0x136 -#define BTN_TR 0x137 -#define BTN_TL2 0x138 -#define BTN_TR2 0x139 -#define BTN_SELECT 0x13a -#define BTN_START 0x13b -#define BTN_MODE 0x13c -#define BTN_THUMBL 0x13d -#define BTN_THUMBR 0x13e - -* add support to remap keys - -* allow mouse emulation - -* allow swapping of dpad and analog axis, so that dpad is first instead of last - -* merge this thing with Pingus Input handling to get a very flexible framework? - -* ... - -[[ InputDrv ]] -============== - -Needed features: -================ -* stick to mouse -* relative-axis (throttle doesn't flip back, a stick does, need to handle that) -* trigger to button -* dpad to axis -* dpad to button -* inversal of axis -* soft-axis for dpad - -(controller - (button (name "BTN_X") ;; X and Y send out BTN_X events - (device (xbox360-button "Y") - (xbox360-button "X"))) - (button (name "BTN_A") - (device (inverse (xbox360-button "Y")))) - (axis (name "ABS_X") - ... -) - - -Controls: -========= - * invert button - * toggle button - * autofire button - - * invert axis - * deadzone axis - * split axis (gas/break) - * join axis (trigger -> zaxis) - * non-linear axis (gamma or so) - - -[[ Xorg Input Hotplug ]] -======================== - -Not available in Ubuntu and still rough, would work via Dbus, see: - -http://www.x.org/wiki/XInputHotplug - -d-feet is a Dbus debuging/viewing tool. - -Example Dbus stuff: -------------------- - -dbus-send --system --type=method_call --print-reply --dest=org.x.config.display0 /org/x/config/0 org.x.config.input.remove uint32:5 -Error org.freedesktop.DBus.Error.ServiceUnknown: The name org.x.config.display0 was not provi - -Doing polling seems to lose some events - -dbus-send --dest=org.gnome.ScreenSaver - / - -dbus-send --dest=org.freedesktop.ExampleName \ - /org/freedesktop/sample/object/name - org.freedesktop.ExampleInterface.ExampleMethod \ - int32:47 string:'hello world' double:65.32 \ - array:string:"1st item","next item","last item" \ - dict:string:int32:"one",1,"two",2,"three",3 \ - variant:int32:-8 \ - objpath:/org/freedesktop/sample/object/name - - -dbus-send --dest=org.x.config.display0 \ - /org/x/config/0 - org.x.config.input.add - - -dbus-send --dest=org.x.config.display0 /org/x/config/0 org.x.config.input.remove int32:5 - -dbus-send \ - --dest=org.x.config.display0 \ - org.freedesktop.DBus.Introspectable \ -org.freedesktop.DBus.Introspectable.Introspect \ - - -Wine Force Feedback: - - -[ingo@duo:~/projects/xboxdrv/trunk/experimental]$ ~/bin/tombraider-anniversary -ERROR: Module xpad does not exist in /proc/modules -USB Device: 003:002 -Controller: "Microsoft Xbox 360 Controller" (idVendor: 0x045e, idProduct: 0x028e) -Controller Type: Xbox360 -Deadzone: 0 -Rumble Debug: off -Rumble Speed: left: 0 right: 0 -LED Status: auto -ButtonMap: none -AxisMap: none -Square Axis: no -RelativeAxisMap: none -AutoFireMap: none -ForceFeedback: enabled -Starting with uinput... done - -Your Xbox/Xbox360 controller should now be available as: - /dev/input/js1 - /dev/input/event10 - -Press Ctrl-c to quit - -Unknown: len: 3 data: 0x02 0x03 0x00 -user.reg is not a valid registry file -fixme:ole:CoInitializeSecurity ((nil),-1,(nil),(nil),0,3,(nil),0,(nil)) - stub! -err:ole:CoGetClassObject class {9a5ea990-3034-4d6f-9128-01f3c61022bc} not registered -err:ole:CoGetClassObject class {9a5ea990-3034-4d6f-9128-01f3c61022bc} not registered -err:ole:create_server class {9a5ea990-3034-4d6f-9128-01f3c61022bc} not registered -fixme:ole:CoGetClassObject CLSCTX_REMOTE_SERVER not supported -err:ole:CoGetClassObject no class object {9a5ea990-3034-4d6f-9128-01f3c61022bc} could be created for context 0x17 -fixme:win:EnumDisplayDevicesW ((null),0,0x33ef54,0x00000000), stub! -fixme:system:SystemParametersInfoW Unimplemented action: 59 (SPI_SETSTICKYKEYS) -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -fixme:d3d:IWineD3DDeviceImpl_EvictManagedResources (0x140a78) : stub -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -fixme:dinput:JoystickAImpl_SetProperty DIPROP_AUTOCENTER(0) -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -err:ole:CoGetClassObject class {4590f811-1d3a-11d0-891f-00aa004b2e24} not registered -err:ole:CoGetClassObject no class object {4590f811-1d3a-11d0-891f-00aa004b2e24} could be created for context 0x1 -Headset: nonetype: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 0 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 257 code: 1 value: 0 -XXX FF_UPLOAD: rumble upload: effect_id: 0 effect_type: 82 -EFFECT: FF_CONSTANT level: 26880 envelope: attack_length: 16 attack_level: 32767 fade_length: 16 fade_level: 32767 --------------------------------- -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -type: 21 code: 0 value: 1 -EV_FF: playing effect: effect_id = 0 value: 1 --------------------------------- -type: 21 code: 0 value: 0 -EV_FF: playing effect: effect_id = 0 value: 0 --------------------------------- -type: 21 code: 0 value: 0 -EV_FF: playing effect: effect_id = 0 value: 0 --------------------------------- -type: 257 code: 2 value: 0 -FF_ERASE: rumble erase: effect_id = 0 --------------------------------- - - -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:LinuxInputEffectImpl_Download Could not upload effect. Assuming a disconnected device. -fixme:dinput:joy_polldev joystick cannot handle type 21 event (code 0) -wine: Unhandled page fault on read access to 0x35545844 at address 0x35545844 (thread 0009), starting debugger... -Unhandled exception: page fault on read access to 0x35545844 in 32-bit code (0x35545844). -Register dump: - CS:0073 SS:007b DS:007b ES:007b FS:0033 GS:003b - EIP:35545844 ESP:0033f2f8 EBP:0033f324 EFLAGS:00210206( - 00 - RIP1) - EAX:12b895d0 EBX:7c08fff4 ECX:116fe938 EDX:1294b6e8 - ESI:12c59178 EDI:116fe920 -Stack dump: -0x0033f2f8: 7c07d52a 12b895d0 b7ed0094 116fe938 -0x0033f308: 0033f344 0033f344 b7ed0189 7c07d45b -0x0033f318: 7c08fff4 116fe920 00000000 0033f344 -0x0033f328: 7c06f45f 116fe920 00000001 12b895d0 -0x0033f338: 00000011 03a23650 039fbac0 03a2369c -0x0033f348: 00412e8a 116fe920 039fbbb0 03a23650 -Backtrace: -=>1 0x35545844 (0x0033f324) - 2 0x7c06f45f IDirectInputDevice2AImpl_Release+0x4f() in dinput (0x0033f344) - 3 0x00412e8a in tra (+0x12e8a) (0x03a2369c) - 4 0x00000000 (0x00000000) -0x35545844: addb %al,0x0(%eax) -Modules: -Module Address Debug info Name (88 modules) -PE 400000- c5b000 Export tra -PE 18000000-18033000 Deferred binkw32 -ELF 7b800000-7b93d000 Deferred kernel32<elf> - - # EOF # diff --git a/src/xboxdrv.cpp b/src/xboxdrv.cpp index 93ea90e..caee43c 100644 --- a/src/xboxdrv.cpp +++ b/src/xboxdrv.cpp @@ -130,7 +130,8 @@ Xboxdrv::run_list_controller() } bool -Xboxdrv::find_controller_by_path(const std::string& busid_str, const std::string& devid_str, libusb_device** xbox_device) const +Xboxdrv::find_controller_by_path(const std::string& busid_str, const std::string& devid_str, + libusb_device** xbox_device) const { int busid = boost::lexical_cast<int>(busid_str); int devid = boost::lexical_cast<int>(devid_str); diff --git a/src/xboxdrv.hpp b/src/xboxdrv.hpp index bc17e1c..99f3b17 100644 --- a/src/xboxdrv.hpp +++ b/src/xboxdrv.hpp @@ -42,9 +42,10 @@ private: const XPadDevice& dev_type, const Options& opts) const; - bool find_controller_by_path(const std::string& busid, const std::string& devid,libusb_device** xbox_device) const; + bool find_controller_by_path(const std::string& busid, const std::string& devid, + libusb_device** xbox_device) const; void find_controller(libusb_device** dev, - XPadDevice& dev_type, + XPadDevice& dev_type, const Options& opts) const; int find_jsdev_number() const; int find_evdev_number() const;