aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs')
-rw-r--r--Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs19
1 files changed, 19 insertions, 0 deletions
diff --git a/Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs b/Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs
new file mode 100644
index 00000000..eabe544f
--- /dev/null
+++ b/Ryujinx.Horizon/Sdk/Sf/Cmif/ScopedInlineContextChange.cs
@@ -0,0 +1,19 @@
+using System;
+
+namespace Ryujinx.Horizon.Sdk.Sf.Cmif
+{
+ struct ScopedInlineContextChange : IDisposable
+ {
+ private readonly int _previousContext;
+
+ public ScopedInlineContextChange(int newContext)
+ {
+ _previousContext = InlineContext.Set(newContext);
+ }
+
+ public void Dispose()
+ {
+ InlineContext.Set(_previousContext);
+ }
+ }
+}