summaryrefslogtreecommitdiff
path: root/src/input_common/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'src/input_common/drivers')
-rw-r--r--src/input_common/drivers/camera.cpp4
-rw-r--r--src/input_common/drivers/camera.h4
-rw-r--r--src/input_common/drivers/gc_adapter.cpp6
-rw-r--r--src/input_common/drivers/gc_adapter.h2
-rw-r--r--src/input_common/drivers/joycon.cpp41
-rw-r--r--src/input_common/drivers/joycon.h12
-rw-r--r--src/input_common/drivers/sdl_driver.cpp4
-rw-r--r--src/input_common/drivers/sdl_driver.h2
-rw-r--r--src/input_common/drivers/virtual_amiibo.cpp4
-rw-r--r--src/input_common/drivers/virtual_amiibo.h2
10 files changed, 39 insertions, 42 deletions
diff --git a/src/input_common/drivers/camera.cpp b/src/input_common/drivers/camera.cpp
index fad9177dc..04970f635 100644
--- a/src/input_common/drivers/camera.cpp
+++ b/src/input_common/drivers/camera.cpp
@@ -72,11 +72,11 @@ std::size_t Camera::getImageHeight() const {
72 } 72 }
73} 73}
74 74
75Common::Input::CameraError Camera::SetCameraFormat( 75Common::Input::DriverResult Camera::SetCameraFormat(
76 [[maybe_unused]] const PadIdentifier& identifier_, 76 [[maybe_unused]] const PadIdentifier& identifier_,
77 const Common::Input::CameraFormat camera_format) { 77 const Common::Input::CameraFormat camera_format) {
78 status.format = camera_format; 78 status.format = camera_format;
79 return Common::Input::CameraError::None; 79 return Common::Input::DriverResult::Success;
80} 80}
81 81
82} // namespace InputCommon 82} // namespace InputCommon
diff --git a/src/input_common/drivers/camera.h b/src/input_common/drivers/camera.h
index ead3e0fde..24b27e325 100644
--- a/src/input_common/drivers/camera.h
+++ b/src/input_common/drivers/camera.h
@@ -22,8 +22,8 @@ public:
22 std::size_t getImageWidth() const; 22 std::size_t getImageWidth() const;
23 std::size_t getImageHeight() const; 23 std::size_t getImageHeight() const;
24 24
25 Common::Input::CameraError SetCameraFormat(const PadIdentifier& identifier_, 25 Common::Input::DriverResult SetCameraFormat(const PadIdentifier& identifier_,
26 Common::Input::CameraFormat camera_format) override; 26 Common::Input::CameraFormat camera_format) override;
27 27
28private: 28private:
29 Common::Input::CameraStatus status{}; 29 Common::Input::CameraStatus status{};
diff --git a/src/input_common/drivers/gc_adapter.cpp b/src/input_common/drivers/gc_adapter.cpp
index 826fa2109..ecb3e9dc2 100644
--- a/src/input_common/drivers/gc_adapter.cpp
+++ b/src/input_common/drivers/gc_adapter.cpp
@@ -324,7 +324,7 @@ bool GCAdapter::GetGCEndpoint(libusb_device* device) {
324 return true; 324 return true;
325} 325}
326 326
327Common::Input::VibrationError GCAdapter::SetVibration( 327Common::Input::DriverResult GCAdapter::SetVibration(
328 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) { 328 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) {
329 const auto mean_amplitude = (vibration.low_amplitude + vibration.high_amplitude) * 0.5f; 329 const auto mean_amplitude = (vibration.low_amplitude + vibration.high_amplitude) * 0.5f;
330 const auto processed_amplitude = 330 const auto processed_amplitude =
@@ -333,9 +333,9 @@ Common::Input::VibrationError GCAdapter::SetVibration(
333 pads[identifier.port].rumble_amplitude = processed_amplitude; 333 pads[identifier.port].rumble_amplitude = processed_amplitude;
334 334
335 if (!rumble_enabled) { 335 if (!rumble_enabled) {
336 return Common::Input::VibrationError::Disabled; 336 return Common::Input::DriverResult::Disabled;
337 } 337 }
338 return Common::Input::VibrationError::None; 338 return Common::Input::DriverResult::Success;
339} 339}
340 340
341bool GCAdapter::IsVibrationEnabled([[maybe_unused]] const PadIdentifier& identifier) { 341bool GCAdapter::IsVibrationEnabled([[maybe_unused]] const PadIdentifier& identifier) {
diff --git a/src/input_common/drivers/gc_adapter.h b/src/input_common/drivers/gc_adapter.h
index b5270fd0b..3c2eb376d 100644
--- a/src/input_common/drivers/gc_adapter.h
+++ b/src/input_common/drivers/gc_adapter.h
@@ -25,7 +25,7 @@ public:
25 explicit GCAdapter(std::string input_engine_); 25 explicit GCAdapter(std::string input_engine_);
26 ~GCAdapter() override; 26 ~GCAdapter() override;
27 27
28 Common::Input::VibrationError SetVibration( 28 Common::Input::DriverResult SetVibration(
29 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override; 29 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override;
30 30
31 bool IsVibrationEnabled(const PadIdentifier& identifier) override; 31 bool IsVibrationEnabled(const PadIdentifier& identifier) override;
diff --git a/src/input_common/drivers/joycon.cpp b/src/input_common/drivers/joycon.cpp
index 696a6db39..cf54f1b53 100644
--- a/src/input_common/drivers/joycon.cpp
+++ b/src/input_common/drivers/joycon.cpp
@@ -233,8 +233,8 @@ bool Joycons::IsVibrationEnabled(const PadIdentifier& identifier) {
233 return handle->IsVibrationEnabled(); 233 return handle->IsVibrationEnabled();
234} 234}
235 235
236Common::Input::VibrationError Joycons::SetVibration( 236Common::Input::DriverResult Joycons::SetVibration(const PadIdentifier& identifier,
237 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) { 237 const Common::Input::VibrationStatus& vibration) {
238 const Joycon::VibrationValue native_vibration{ 238 const Joycon::VibrationValue native_vibration{
239 .low_amplitude = vibration.low_amplitude, 239 .low_amplitude = vibration.low_amplitude,
240 .low_frequency = vibration.low_frequency, 240 .low_frequency = vibration.low_frequency,
@@ -243,32 +243,31 @@ Common::Input::VibrationError Joycons::SetVibration(
243 }; 243 };
244 auto handle = GetHandle(identifier); 244 auto handle = GetHandle(identifier);
245 if (handle == nullptr) { 245 if (handle == nullptr) {
246 return Common::Input::VibrationError::InvalidHandle; 246 return Common::Input::DriverResult::InvalidHandle;
247 } 247 }
248 248
249 handle->SetVibration(native_vibration); 249 handle->SetVibration(native_vibration);
250 return Common::Input::VibrationError::None; 250 return Common::Input::DriverResult::Success;
251} 251}
252 252
253void Joycons::SetLeds(const PadIdentifier& identifier, const Common::Input::LedStatus& led_status) { 253Common::Input::DriverResult Joycons::SetLeds(const PadIdentifier& identifier,
254 const Common::Input::LedStatus& led_status) {
254 auto handle = GetHandle(identifier); 255 auto handle = GetHandle(identifier);
255 if (handle == nullptr) { 256 if (handle == nullptr) {
256 return; 257 return Common::Input::DriverResult::InvalidHandle;
257 } 258 }
258 int led_config = led_status.led_1 ? 1 : 0; 259 int led_config = led_status.led_1 ? 1 : 0;
259 led_config += led_status.led_2 ? 2 : 0; 260 led_config += led_status.led_2 ? 2 : 0;
260 led_config += led_status.led_3 ? 4 : 0; 261 led_config += led_status.led_3 ? 4 : 0;
261 led_config += led_status.led_4 ? 8 : 0; 262 led_config += led_status.led_4 ? 8 : 0;
262 263
263 const auto result = handle->SetLedConfig(static_cast<u8>(led_config)); 264 return static_cast<Common::Input::DriverResult>(
264 if (result != Joycon::DriverResult::Success) { 265 handle->SetLedConfig(static_cast<u8>(led_config)));
265 LOG_ERROR(Input, "Failed to set led config");
266 }
267} 266}
268 267
269Common::Input::CameraError Joycons::SetCameraFormat(const PadIdentifier& identifier_, 268Common::Input::DriverResult Joycons::SetCameraFormat(const PadIdentifier& identifier_,
270 Common::Input::CameraFormat camera_format) { 269 Common::Input::CameraFormat camera_format) {
271 return Common::Input::CameraError::NotSupported; 270 return Common::Input::DriverResult::NotSupported;
272}; 271};
273 272
274Common::Input::NfcState Joycons::SupportsNfc(const PadIdentifier& identifier_) const { 273Common::Input::NfcState Joycons::SupportsNfc(const PadIdentifier& identifier_) const {
@@ -280,32 +279,30 @@ Common::Input::NfcState Joycons::WriteNfcData(const PadIdentifier& identifier_,
280 return Common::Input::NfcState::NotSupported; 279 return Common::Input::NfcState::NotSupported;
281}; 280};
282 281
283Common::Input::PollingError Joycons::SetPollingMode(const PadIdentifier& identifier, 282Common::Input::DriverResult Joycons::SetPollingMode(const PadIdentifier& identifier,
284 const Common::Input::PollingMode polling_mode) { 283 const Common::Input::PollingMode polling_mode) {
285 auto handle = GetHandle(identifier); 284 auto handle = GetHandle(identifier);
286 if (handle == nullptr) { 285 if (handle == nullptr) {
287 LOG_ERROR(Input, "Invalid handle {}", identifier.port); 286 LOG_ERROR(Input, "Invalid handle {}", identifier.port);
288 return Common::Input::PollingError::InvalidHandle; 287 return Common::Input::DriverResult::InvalidHandle;
289 } 288 }
290 289
291 switch (polling_mode) { 290 switch (polling_mode) {
292 case Common::Input::PollingMode::NFC: 291 case Common::Input::PollingMode::NFC:
293 handle->SetNfcMode(); 292 return static_cast<Common::Input::DriverResult>(handle->SetNfcMode());
294 break; 293 break;
295 case Common::Input::PollingMode::Active: 294 case Common::Input::PollingMode::Active:
296 handle->SetActiveMode(); 295 return static_cast<Common::Input::DriverResult>(handle->SetActiveMode());
297 break; 296 break;
298 case Common::Input::PollingMode::Pasive: 297 case Common::Input::PollingMode::Pasive:
299 handle->SetPasiveMode(); 298 return static_cast<Common::Input::DriverResult>(handle->SetPasiveMode());
300 break; 299 break;
301 case Common::Input::PollingMode::Ring: 300 case Common::Input::PollingMode::Ring:
302 handle->SetRingConMode(); 301 return static_cast<Common::Input::DriverResult>(handle->SetRingConMode());
303 break; 302 break;
304 default: 303 default:
305 return Common::Input::PollingError::NotSupported; 304 return Common::Input::DriverResult::NotSupported;
306 } 305 }
307
308 return Common::Input::PollingError::None;
309} 306}
310 307
311void Joycons::OnBatteryUpdate(std::size_t port, Joycon::ControllerType type, 308void Joycons::OnBatteryUpdate(std::size_t port, Joycon::ControllerType type,
diff --git a/src/input_common/drivers/joycon.h b/src/input_common/drivers/joycon.h
index 56c117270..1a04c19fd 100644
--- a/src/input_common/drivers/joycon.h
+++ b/src/input_common/drivers/joycon.h
@@ -29,20 +29,20 @@ public:
29 ~Joycons(); 29 ~Joycons();
30 30
31 bool IsVibrationEnabled(const PadIdentifier& identifier) override; 31 bool IsVibrationEnabled(const PadIdentifier& identifier) override;
32 Common::Input::VibrationError SetVibration( 32 Common::Input::DriverResult SetVibration(
33 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override; 33 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override;
34 34
35 void SetLeds(const PadIdentifier& identifier, 35 Common::Input::DriverResult SetLeds(const PadIdentifier& identifier,
36 const Common::Input::LedStatus& led_status) override; 36 const Common::Input::LedStatus& led_status) override;
37 37
38 Common::Input::CameraError SetCameraFormat(const PadIdentifier& identifier_, 38 Common::Input::DriverResult SetCameraFormat(const PadIdentifier& identifier_,
39 Common::Input::CameraFormat camera_format) override; 39 Common::Input::CameraFormat camera_format) override;
40 40
41 Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override; 41 Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override;
42 Common::Input::NfcState WriteNfcData(const PadIdentifier& identifier_, 42 Common::Input::NfcState WriteNfcData(const PadIdentifier& identifier_,
43 const std::vector<u8>& data) override; 43 const std::vector<u8>& data) override;
44 44
45 Common::Input::PollingError SetPollingMode( 45 Common::Input::DriverResult SetPollingMode(
46 const PadIdentifier& identifier, const Common::Input::PollingMode polling_mode) override; 46 const PadIdentifier& identifier, const Common::Input::PollingMode polling_mode) override;
47 47
48 /// Used for automapping features 48 /// Used for automapping features
diff --git a/src/input_common/drivers/sdl_driver.cpp b/src/input_common/drivers/sdl_driver.cpp
index c9496a0d8..51a9d8962 100644
--- a/src/input_common/drivers/sdl_driver.cpp
+++ b/src/input_common/drivers/sdl_driver.cpp
@@ -545,7 +545,7 @@ std::vector<Common::ParamPackage> SDLDriver::GetInputDevices() const {
545 return devices; 545 return devices;
546} 546}
547 547
548Common::Input::VibrationError SDLDriver::SetVibration( 548Common::Input::DriverResult SDLDriver::SetVibration(
549 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) { 549 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) {
550 const auto joystick = 550 const auto joystick =
551 GetSDLJoystickByGUID(identifier.guid.RawString(), static_cast<int>(identifier.port)); 551 GetSDLJoystickByGUID(identifier.guid.RawString(), static_cast<int>(identifier.port));
@@ -579,7 +579,7 @@ Common::Input::VibrationError SDLDriver::SetVibration(
579 .vibration = new_vibration, 579 .vibration = new_vibration,
580 }); 580 });
581 581
582 return Common::Input::VibrationError::None; 582 return Common::Input::DriverResult::Success;
583} 583}
584 584
585bool SDLDriver::IsVibrationEnabled(const PadIdentifier& identifier) { 585bool SDLDriver::IsVibrationEnabled(const PadIdentifier& identifier) {
diff --git a/src/input_common/drivers/sdl_driver.h b/src/input_common/drivers/sdl_driver.h
index 366bcc496..ffde169b3 100644
--- a/src/input_common/drivers/sdl_driver.h
+++ b/src/input_common/drivers/sdl_driver.h
@@ -63,7 +63,7 @@ public:
63 63
64 bool IsStickInverted(const Common::ParamPackage& params) override; 64 bool IsStickInverted(const Common::ParamPackage& params) override;
65 65
66 Common::Input::VibrationError SetVibration( 66 Common::Input::DriverResult SetVibration(
67 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override; 67 const PadIdentifier& identifier, const Common::Input::VibrationStatus& vibration) override;
68 68
69 bool IsVibrationEnabled(const PadIdentifier& identifier) override; 69 bool IsVibrationEnabled(const PadIdentifier& identifier) override;
diff --git a/src/input_common/drivers/virtual_amiibo.cpp b/src/input_common/drivers/virtual_amiibo.cpp
index 63ffaca67..29e129d3c 100644
--- a/src/input_common/drivers/virtual_amiibo.cpp
+++ b/src/input_common/drivers/virtual_amiibo.cpp
@@ -22,7 +22,7 @@ VirtualAmiibo::VirtualAmiibo(std::string input_engine_) : InputEngine(std::move(
22 22
23VirtualAmiibo::~VirtualAmiibo() = default; 23VirtualAmiibo::~VirtualAmiibo() = default;
24 24
25Common::Input::PollingError VirtualAmiibo::SetPollingMode( 25Common::Input::DriverResult VirtualAmiibo::SetPollingMode(
26 [[maybe_unused]] const PadIdentifier& identifier_, 26 [[maybe_unused]] const PadIdentifier& identifier_,
27 const Common::Input::PollingMode polling_mode_) { 27 const Common::Input::PollingMode polling_mode_) {
28 polling_mode = polling_mode_; 28 polling_mode = polling_mode_;
@@ -37,7 +37,7 @@ Common::Input::PollingError VirtualAmiibo::SetPollingMode(
37 } 37 }
38 } 38 }
39 39
40 return Common::Input::PollingError::None; 40 return Common::Input::DriverResult::Success;
41} 41}
42 42
43Common::Input::NfcState VirtualAmiibo::SupportsNfc( 43Common::Input::NfcState VirtualAmiibo::SupportsNfc(
diff --git a/src/input_common/drivers/virtual_amiibo.h b/src/input_common/drivers/virtual_amiibo.h
index 0f9dad333..13cacfc0a 100644
--- a/src/input_common/drivers/virtual_amiibo.h
+++ b/src/input_common/drivers/virtual_amiibo.h
@@ -36,7 +36,7 @@ public:
36 ~VirtualAmiibo() override; 36 ~VirtualAmiibo() override;
37 37
38 // Sets polling mode to a controller 38 // Sets polling mode to a controller
39 Common::Input::PollingError SetPollingMode( 39 Common::Input::DriverResult SetPollingMode(
40 const PadIdentifier& identifier_, const Common::Input::PollingMode polling_mode_) override; 40 const PadIdentifier& identifier_, const Common::Input::PollingMode polling_mode_) override;
41 41
42 Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override; 42 Common::Input::NfcState SupportsNfc(const PadIdentifier& identifier_) const override;