aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
diff options
context:
space:
mode:
authormageven <62494521+mageven@users.noreply.github.com>2020-04-03 05:40:02 +0530
committerGitHub <noreply@github.com>2020-04-03 11:10:02 +1100
commit2365ddfc363e76ac1ac9d2e32ef9b36b85463431 (patch)
tree408bdb4a35e4f625a69ddbd65f22e9f056f7ebec /Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
parent5b5239ab5b452f991d9fc4f8ad1f9a2880b8bad1 (diff)
HID SharedMem Rework (#1003)
* Delete old HLE.Input * Add new HLE Input. git shows Hid.cs as modified because of the same name. It is new. * Change HID Service * Change Ryujinx UI to reflect new Input * Add basic ControllerApplet * Add DebugPad Should fix Kirby Star Allies * Address Ac_K's comments * Moved all of HLE.Input to Services.Hid * Separated all structs and enums each to a file * Removed vars * Made some naming changes to align with switchbrew * Added official joycon colors As an aside, fixed a mistake in touchscreen headers and added checks to important SharedMem structs at init time. * Further address Ac_K's comments * Addressed gdkchan's and some more Ac_K's comments * Address AcK's review comments * Address AcK's second review comments * Replace missed Marshal.SizeOf and address gdkchan's comments
Diffstat (limited to 'Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs')
-rw-r--r--Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs15
1 files changed, 15 insertions, 0 deletions
diff --git a/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs b/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
new file mode 100644
index 00000000..f4ccb7ba
--- /dev/null
+++ b/Ryujinx.HLE/Exceptions/InvalidStructLayoutException.cs
@@ -0,0 +1,15 @@
+using System;
+using System.Runtime.CompilerServices;
+
+namespace Ryujinx.HLE.Exceptions
+{
+ public class InvalidStructLayoutException<T> : Exception
+ {
+ static readonly Type _structType = typeof(T);
+
+ public InvalidStructLayoutException(string message) : base(message) {}
+
+ public InvalidStructLayoutException(int expectedSize) :
+ base($"Type {_structType.Name} has the wrong size. Expected: {expectedSize} bytes, Got: {Unsafe.SizeOf<T>()} bytes") {}
+ }
+} \ No newline at end of file