namespace LanMountainDesktop.AirAppSdk; /// /// Runtime mode for AirApps. /// public enum AirAppRuntimeMode { /// /// Run in the host process (best performance, shared memory). /// InProcess = 0, /// /// Run in an isolated background process (safer, separate memory). /// IsolatedBackground = 1, /// /// Run in an isolated window process (full isolation). /// IsolatedWindow = 2 } /// /// Helper for parsing runtime modes. /// public static class AirAppRuntimeModes { public static bool TryParse(string? mode, out AirAppRuntimeMode result) { result = AirAppRuntimeMode.InProcess; if (string.IsNullOrWhiteSpace(mode)) { return false; } var normalized = mode.Trim().ToLowerInvariant(); return normalized switch { "in-process" => SetResult(AirAppRuntimeMode.InProcess, out result), "isolated-background" => SetResult(AirAppRuntimeMode.IsolatedBackground, out result), "isolated-window" => SetResult(AirAppRuntimeMode.IsolatedWindow, out result), _ => false }; } private static bool SetResult(AirAppRuntimeMode mode, out AirAppRuntimeMode result) { result = mode; return true; } }