Commit graph

42 commits

Author SHA1 Message Date
Morph
ad3905fe27 input_common: Add VibrationDevice and VibrationDeviceFactory
A vibration device is an input device that returns an unsigned byte as status.
It represents whether the vibration device supports vibration or not.
If the status returns 1, it supports vibration. Otherwise, it does not support vibration.
2020-11-15 23:33:20 -05:00
german
2aafcc5f4b Add hotplug, rumble and fix 3rd party adapters for the GC adapter 2020-10-28 21:12:34 -05:00
Lioncash
d44d662529 input_common/CMakeLists: Make some warnings errors
Makes the input_common code warnings consistent with the rest of the
codebase.
2020-10-15 19:37:51 -04:00
german
9f70da1a9b Add automap feature for GC adapter 2020-09-18 16:51:16 -05:00
ReinUsesLisp
67dd8466b3 gc_adapter: Disable MSVC nonstandard extension warning on libusb.h
Pragma disable zero-sized array nonstandard extension warning on MSVC.
2020-09-14 19:38:08 -03:00
Lioncash
14d5340a9d gc_adapter: Make DeviceConnected() a const member function
This doesn't modify instance state, so it can be made const.
2020-09-07 02:49:13 -04:00
Brian J. Tarricone
f637cfec64 GCAdapter: only join worker thread if running & joinable 2020-07-26 14:54:02 -07:00
Lioncash
bc2f95ea67 gc_adapter: Resolve C++20 deprecation warning 2020-07-25 03:38:22 -04:00
ameerj
45584cf459 std::size_t where appropriate, make error message more clear if can't read 2020-07-17 12:10:32 -04:00
Ameer
05174770cc Refactor adapter code 2020-07-16 13:00:04 -04:00
Ameer
ed995fe27e Rebase to master 2020-07-14 13:04:02 -04:00
bunnei
f18dca4b04 Merge pull request #4314 from lioncash/input-warn
gcadapter: Tidy up compiler warnings
2020-07-14 10:20:12 -04:00
Jan Beich
cfc73b4188 input_common: make libusb private to gc_adapter 2020-07-13 18:48:19 +00:00
Lioncash
1fe8261049 gc_adapter: Remove deprecated usage of = in lambda captures
It's deprecated in C++20 to use = to capture the this pointer.

Instead, we can simply pass this as an argument to the thread
constructor.
2020-07-12 15:38:19 -04:00
Lioncash
6b6d076f51 gc_adapter: Silence sign conversion warnings 2020-07-12 15:36:27 -04:00
Ameer
a885855ff4 Break out of scan loop if can't find adapter on first run 2020-07-10 11:07:43 -04:00
Ameer
d875341016 Rebase to master, fix merge conflicts 2020-07-08 21:15:49 -04:00
Ameer
6e2876d7da Address comments for better clarity/signed dev count 2020-07-08 14:18:54 -04:00
Ameer
0e21c24052 Add more libusb error checks 2020-07-08 13:19:33 -04:00
Ameer
f1790c7b34 Address PR feedback, fix axis button thresholding 2020-07-07 12:20:59 -04:00
Ameer
3eeb56e064 Brace the code! Fix compile error due to class member construction order 2020-07-06 23:01:57 -04:00
Ameer
9a989c4ff9 Recalibrate reconnected controllers 2020-07-06 22:09:07 -04:00
Ameer
68a4bc8179 Save origin state of GC controller analog features, compare against origin for input detection 2020-07-06 21:58:31 -04:00
Ameer
e081fb0718 Fix for always firing triggers on some controllers, trigger threshold more universal 2020-07-04 00:40:48 -04:00
Ameer
670614dbf4 Address lioncash feedback: Log formatting, extern const PadButtonArray, little touch ups 2020-07-03 11:52:07 -04:00
Ameer
12e679c39c Add LR triggers as axes, half press to initiate a press, add GC axis id in config, clarify some code blocks for better readability 2020-07-02 15:54:44 -04:00
Ameer
34e6084c8d Reset adapter state on init, fixes errors relating driver hang from unexpected unplug 2020-07-01 12:52:50 -04:00
Ameer
0c6128cc3a Address feedback regarding increments, const vars, and general cleanup 2020-06-30 17:28:02 -04:00
Ameer
ed72085227 fix implicit conversion of size_t type to int 2020-06-30 11:44:55 -04:00
Ameer J
21ae845d69 left const auto&, comment punctuation.
Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2020-06-26 23:46:49 -04:00
Ameer J
eb06e3e8bf const& to button in button array
Co-authored-by: VolcaEM <63682805+VolcaEM@users.noreply.github.com>
2020-06-25 19:46:50 -04:00
Ameer
677a07c253 Stop reading loop if error is encountered 2020-06-25 19:31:51 -04:00
Ameer
7c10c568da padbutton enum class and struct initiailization 2020-06-24 11:39:30 -04:00
Ameer
39ca7c675c cleanup check access, read, and factory GetNextInput funcs. Use size rather than magic number 2020-06-23 17:37:15 -04:00
Ameer
ef0b52563d Fix deallocation of GC Adapter 2020-06-23 12:47:58 -04:00
Ameer
f071a70fec std::array and const reference passing of non-trivial objects 2020-06-22 18:11:59 -04:00
Ameer
a0f8f1dc5e fix for sleep using stl 2020-06-21 22:58:53 -04:00
Ameer
92a812d815 shared_ptr for the GC adapter class, constexpr constants 2020-06-21 21:50:58 -04:00
Ameer
4a54dc6bbf std::arrays where appropriate, clear q in adapter class, other touch ups 2020-06-21 21:17:46 -04:00
Ameer
eddf2d0f4e Singleton GC Adapter class, remove globals, fix naming convention
Fix clang formatting

Manual fix for configure_input_player formatting

Add missing lib usb cmake command
2020-06-21 21:17:07 -04:00
Ameer
77ae7fe5dd Clang Formatting 2020-06-21 15:31:57 -04:00
Ameer
dbe1ad4fe4 GC Adapter Implementation 2020-06-21 12:36:28 -04:00