summaryrefslogtreecommitdiffstats
path: root/src/common
diff options
context:
space:
mode:
authorgerman77 <juangerman-13@hotmail.com>2022-06-19 06:32:07 +0200
committergerman77 <juangerman-13@hotmail.com>2022-07-24 02:38:42 +0200
commitf19e7be6e84357234c9fdae3395f988a9bb1ac5b (patch)
treecc93872ac739fd7b967f8f62ea6abf2c8639221d /src/common
parentMerge pull request #8545 from Kelebek1/Audio (diff)
downloadyuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar.gz
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar.bz2
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar.lz
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar.xz
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.tar.zst
yuzu-f19e7be6e84357234c9fdae3395f988a9bb1ac5b.zip
Diffstat (limited to 'src/common')
-rw-r--r--src/common/input.h29
-rw-r--r--src/common/settings.h3
2 files changed, 31 insertions, 1 deletions
diff --git a/src/common/input.h b/src/common/input.h
index bb42aaacc..995c35d9d 100644
--- a/src/common/input.h
+++ b/src/common/input.h
@@ -28,7 +28,7 @@ enum class InputType {
Color,
Vibration,
Nfc,
- Ir,
+ IrSensor,
};
// Internal battery charge level
@@ -53,6 +53,15 @@ enum class PollingMode {
IR,
};
+enum class CameraFormat {
+ Size320x240,
+ Size160x120,
+ Size80x60,
+ Size40x30,
+ Size20x15,
+ None,
+};
+
// Vibration reply from the controller
enum class VibrationError {
None,
@@ -68,6 +77,13 @@ enum class PollingError {
Unknown,
};
+// Ir camera reply from the controller
+enum class CameraError {
+ None,
+ NotSupported,
+ Unknown,
+};
+
// Hint for amplification curve to be used
enum class VibrationAmplificationType {
Linear,
@@ -176,6 +192,12 @@ struct LedStatus {
bool led_4{};
};
+// Raw data fom camera
+struct CameraStatus {
+ CameraFormat format{CameraFormat::None};
+ std::vector<u8> data{};
+};
+
// List of buttons to be passed to Qt that can be translated
enum class ButtonNames {
Undefined,
@@ -233,6 +255,7 @@ struct CallbackStatus {
BodyColorStatus color_status{};
BatteryStatus battery_status{};
VibrationStatus vibration_status{};
+ CameraStatus camera_status{};
};
// Triggered once every input change
@@ -281,6 +304,10 @@ public:
virtual PollingError SetPollingMode([[maybe_unused]] PollingMode polling_mode) {
return PollingError::NotSupported;
}
+
+ virtual CameraError SetCameraFormat([[maybe_unused]] CameraFormat camera_format) {
+ return CameraError::NotSupported;
+ }
};
/// An abstract class template for a factory that can create input devices.
diff --git a/src/common/settings.h b/src/common/settings.h
index 06d72c8bf..20959ec89 100644
--- a/src/common/settings.h
+++ b/src/common/settings.h
@@ -503,6 +503,9 @@ struct Values {
Setting<bool> enable_ring_controller{true, "enable_ring_controller"};
RingconRaw ringcon_analogs;
+ BasicSetting<bool> enable_ir_sensor{false, "enable_ir_sensor"};
+ BasicSetting<std::string> ir_sensor_device{"auto", "ir_sensor_device"};
+
// Data Storage
Setting<bool> use_virtual_sd{true, "use_virtual_sd"};
Setting<bool> gamecard_inserted{false, "gamecard_inserted"};