aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Input/Motion/CemuHook/Protocol
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Input/Motion/CemuHook/Protocol')
-rw-r--r--Ryujinx.Input/Motion/CemuHook/Protocol/ControllerData.cs18
-rw-r--r--Ryujinx.Input/Motion/CemuHook/Protocol/ControllerInfo.cs13
-rw-r--r--Ryujinx.Input/Motion/CemuHook/Protocol/SharedResponse.cs6
3 files changed, 16 insertions, 21 deletions
diff --git a/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerData.cs b/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerData.cs
index 9ff8dc91..7fb72344 100644
--- a/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerData.cs
+++ b/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerData.cs
@@ -1,16 +1,15 @@
-using System.Runtime.InteropServices;
+using Ryujinx.Common.Memory;
+using System.Runtime.InteropServices;
namespace Ryujinx.Input.Motion.CemuHook.Protocol
{
[StructLayout(LayoutKind.Sequential, Pack = 1)]
struct ControllerDataRequest
{
- public MessageType Type;
+ public MessageType Type;
public SubscriberType SubscriberType;
- public byte Slot;
-
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
- public byte[] MacAddress;
+ public byte Slot;
+ public Array6<byte> MacAddress;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
@@ -27,11 +26,8 @@ namespace Ryujinx.Input.Motion.CemuHook.Protocol
public uint DPadAnalog;
public ulong MainButtonsAnalog;
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
- public byte[] Touch1;
-
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
- public byte[] Touch2;
+ public Array6<byte> Touch1;
+ public Array6<byte> Touch2;
public ulong MotionTimestamp;
public float AccelerometerX;
diff --git a/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerInfo.cs b/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerInfo.cs
index d483633e..63d4524a 100644
--- a/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerInfo.cs
+++ b/Ryujinx.Input/Motion/CemuHook/Protocol/ControllerInfo.cs
@@ -1,21 +1,20 @@
-using System.Runtime.InteropServices;
+using Ryujinx.Common.Memory;
+using System.Runtime.InteropServices;
namespace Ryujinx.Input.Motion.CemuHook.Protocol
{
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ControllerInfoResponse
{
- public SharedResponse Shared;
- private byte _zero;
+ public SharedResponse Shared;
+ private byte _zero;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
public struct ControllerInfoRequest
{
public MessageType Type;
- public int PortsCount;
-
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 4)]
- public byte[] PortIndices;
+ public int PortsCount;
+ public Array4<byte> PortIndices;
}
} \ No newline at end of file
diff --git a/Ryujinx.Input/Motion/CemuHook/Protocol/SharedResponse.cs b/Ryujinx.Input/Motion/CemuHook/Protocol/SharedResponse.cs
index 0593286d..e2e1ee9b 100644
--- a/Ryujinx.Input/Motion/CemuHook/Protocol/SharedResponse.cs
+++ b/Ryujinx.Input/Motion/CemuHook/Protocol/SharedResponse.cs
@@ -1,4 +1,5 @@
-using System.Runtime.InteropServices;
+using Ryujinx.Common.Memory;
+using System.Runtime.InteropServices;
namespace Ryujinx.Input.Motion.CemuHook.Protocol
{
@@ -11,8 +12,7 @@ namespace Ryujinx.Input.Motion.CemuHook.Protocol
public DeviceModelType ModelType;
public ConnectionType ConnectionType;
- [MarshalAs(UnmanagedType.ByValArray, SizeConst = 6)]
- public byte[] MacAddress;
+ public Array6<byte> MacAddress;
public BatteryStatus BatteryStatus;
}