Skip to content

filmopen_machine

Generated by scripts/package_digest.py; regenerate, never edit.

This computer’s OS, CPU, RAM and GPU memory facts, read once per session. Linux uses local standard sources and nvidia-smi; Windows reads its GPUs alone with the same nvidia-smi query, found on the PATH where NVIDIA’s driver put it, and macOS and Windows’ other facts answer unknown with noParser. Phones answer unsupportedPlatform and the web has a conditional stub. Each probe is bounded to five seconds. No network, account, identifier or refresh is involved. AppLog records stages, elapsed time and reasons, a command’s arguments, output, errors and exception message as they are, a file probe’s length and text, and the facts read. Pure parsers use committed captures. The package depends on filmopen_store for AppLog alone.

pure Dart. 5 files, 296 lines under lib/; 15 tests in 2 files. Barrel: lib/filmopen_machine.dart.

  • filmopen_store — uses AppLog

filmopen_plugin_host, filmopen_render_ui

What the barrel exports, file by file. A name is class, enum, mixin, extension, typedef, a top-level function, getter, setter or variable; under a class, its public constructors, fields, getters, setters and methods.

  • variable const unknownFact — Facts not read are explicit string sentinels, never estimates.
  • class MachineFacts — This computer’s non-identifying facts in revision 10’s Machine shape.
    • const MachineFacts({required this.os, this.version = unknownFact, this.cpu = unknownFact, this.ram = unknownFact, this.gpus = unknownFact, this.unk… — Constructs facts from parsed sources; omitted facts remain unknown.
    • final String os — The platform name, including web and the unsupported phones.
    • final String version — The OS version, or the unknown sentinel.
    • final Object cpu — Model, physical core count and thread count, or unknown.
    • final Object ram — Physical memory bytes, or unknown.
    • final Object gpus — GPUs with their memory pools, or unknown.
    • final List<String> unknown — Dotted facts that could not be read.
    • factory MachineFacts.unavailable(String os) — Answers every fact but the platform as unknown.
    • Map<String, Object?> toJson() — Serializes the public Machine contract without probe outputs.
  • class MachineProbe — A pure parser’s answer and the reason any facts remain unread.
    • const MachineProbe(this.value, {this.unknown = const [], this.reason}) — Records parsed facts without retaining their source text.
    • final Object value — The fact’s object, array, string or unknown sentinel.
    • final List<String> unknown — Dotted facts that remain unread.
    • final String? reason — A fixed reason; the probe’s line logs the source text and any error beside it.
    • factory MachineProbe.unparsed(String fact) — Refuses to infer a fact from an unreadable source.
  • class MachineReader — The web’s local-facts boundary: no Platform or local file access.
    • static Future<MachineFacts> current() — Returns this web session’s single explicit unknown answer.
    • Future<MachineFacts> read() — Answers web and unknown facts, logging the boundary and every reuse.

Files under lib/ the barrel does not reach; nothing outside the package may import them.

  • lib/src/machine_io.dart: MachineProcess, ProcessRunner, FileReader, _process, MachineReader
  • lib/src/parse_linux.dart: parseLinuxOs, parseLinuxCpu, parseLinuxRam, parseLinuxGpus