FrameCache class final

Persists captured frames on disk so an unchanged render replays from cache instead of re-capturing.

Keys are FNV-1a-64 hex over renderDigest:frameIndex — hex, so path-safe by construction. The cache is advisory: the digest covers the render config, composition key and fluvie version, but not the composition's code, so editing a composition under an unchanged key can serve stale frames until the digest moves or a --no-cache run bypasses it. Entries persist across FrameCache instances sharing the same root.

Constructors

FrameCache(Directory root)
Creates a cache rooted at root (created lazily on first store).

Properties

hashCode → int
The hash code for this object.
no setterinherited
root → Directory
The directory holding one file per cached frame, named by its key.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

frameKey(String renderDigest, int frameIndex) → String
The cache key of frame frameIndex within the render identified by renderDigest.
lookup(String key) → Future<Uint8List?>
The cached frame bytes for key, or null on a miss.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
store(String key, Uint8List bytes) → Future<void>
Stores bytes under key, creating root when needed.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

defaultRoot() → Directory
The default cache root shared by the render pipeline and the capture harness: fluvie_frame_cache under the system temp directory.