Vixen
02b45cc4
csharp
public sealed class MacOSPlatformSupplement

What macOS knows that SDL does not.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

The three that are here are the pickers, the pasteboard beyond text, and the thermal state — which is the only desktop that reports one, and the reason ThermalState exists at all.

The fourth, thread affinity, is not an improvement here: macOS does not offer it and offers quality-of-service classes instead. The topology is still replaced, because the counts it gives — how many performance cores, how many efficiency cores — are what sizing a worker pool on an Apple silicon machine needs, and SDL reports one number for both kinds.

Everything degrades to the portable implementation when the frameworks cannot be loaded, which is what a Mac with a broken system installation looks like and is not a case worth throwing over.

Fields and properties (1)

  • public string Name

    A name for logs and crash reports: "Windows", "macOS".

Methods (2)

  • public PlatformServices Augment(in PlatformServices baseline)

    Replaces what this operating system can do better, and keeps the rest.

  • public void Dispose()

    Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

Used by (2)

  • DesktopSupplementsVixen.Platform.Desktop
  • MacOSSupplementTestsVixen.Platform.MacOS.Tests