Vixen
dd8b0a81
csharp
public record class AppArguments

The --vixen-* arguments the host understands, and everything else untouched.

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

Remarks

One prefix, reserved for the engine, so an application can define whatever arguments it likes without a collision and without the host needing to know about them. Anything not starting with --vixen- comes back in Remaining in its original order.

Unrecognised --vixen-* arguments are collected rather than ignored. A typo in a launch script that silently does nothing is how a QA build runs for a week without the profiler somebody thought they had enabled.

Fields and properties (23)

  • public IReadOnlyList<string> Remaining

    Arguments the host did not consume, in order.

  • public IReadOnlyList<string> Unrecognised

    --vixen-* arguments the host does not recognise, with their values.

  • public BuildVariant? Variant

    The variant named by --vixen-variant, or .

  • public bool Headless

    Whether --vixen-headless was given.

  • public bool Offscreen

    Whether --vixen-offscreen was given.

  • public bool GpuProfiling

    Whether --vixen-gpu-profile was given.

  • public bool Profiling

    Whether --vixen-profile was given, or --vixen-trace implied it.

  • public string? TracePath

    Where --vixen-trace writes a Chrome trace_event document, or .

  • public bool Overlays

    Whether --vixen-overlays was given.

  • public IReadOnlyList<string> EnabledOverlays

    The panel names from --vixen-overlay a,b, which also implies the above.

  • public string? VideoDriver

    The SDL video driver named by --vixen-video-driver, or .

  • public int? WorkerCount

    The worker count from --vixen-workers, or .

  • public bool PinWorkers

    Whether --vixen-pin-workers was given.

  • public int? FrameRateLimit

    The frame cap from --vixen-frame-limit, or .

  • public int? MaxFrames

    How many frames to run before stopping, from --vixen-frames.

  • public TimeSpan? RunFor

    How long to run before stopping, from --vixen-run-for, or .

  • public TimeSpan? FixedFrameTime

    How long every frame is told it took, from --vixen-fixed-step, or for the wall clock.

  • public string? CapturePath

    The directory from --vixen-capture to write the last frame into, or .

  • public IReadOnlyList<GraphicsBackend> Backends

    The backend order from --vixen-backend, or empty for none given.

  • public LogLevel? LogLevel

    The level from --vixen-log-level, or .

  • public string? LogFilePath

    The directory for rolling log files, from --vixen-log-file, or for no file at all.

  • public string? LooseContentPath

    The directory from --vixen-loose-content, or .

  • public string? StartupScene

    The scene address from --vixen-scene, or .

Methods (1)

  • public static AppArguments Parse(IReadOnlyList<string>? arguments)

    Reads the --vixen-* arguments out of a command line.

Used by (11)

  • AppBuilderVixen.App.Hosting
  • AppConfigVixen.App.Hosting
  • AppArgumentsTestsVixen.App.Tests
  • AppBackendTestsVixen.App.Tests
  • BuildVariantTestsVixen.App.Tests
  • HeadlessFlagTestsVixen.App.Tests
  • ProcessorAffinityPlacementTestsVixen.App.Tests
  • RunForTestsVixen.App.Tests
  • TemplateTestsVixen.Templates.Tests
  • VixenAppVixen.App
  • WorkerPinningWiringTestsVixen.App.Tests