luft/render/status-bar.lisp
ADD owns rejection cleanup after the transfer boundary.
Attach viewer's default top status line exactly once at a frame boundary.
An explicitly owned AVFrame.
(instrument)Return INSTRUMENT's input and visual stacking priority.
(viewer)(owner)Return OWNER's ordered status channel symbols. The default method supplies the application channels. A game adds sparse fields with an ordinary method which appends to CALL-NEXT-METHOD; it never has to replace the status frame or its sampling and presentation policy.
(channel owner status-bar)Return CHANNEL's cheap semantic value for OWNER and STATUS-BAR. Methods run only on the throttled frame-boundary sample, never during paint. They must inspect already-owned state and must not perform I/O or wait.
(viewer)Either :PERSPECTIVE or :ISOMETRIC. An isometric picture has no vanishing point, so two chamfers the same width are the same width on screen wherever they sit. That is what makes it the projection to judge a shape rule in.
(viewer)(instrument viewer)Publish INSTRUMENT's already-owned state at VIEWER's frame boundary.
(viewer)(bar logical-width &key (now (get-internal-real-time)))(instrument viewer pass surface-texture physical-extent)Encode INSTRUMENT into VIEWER's final PASS at PHYSICAL-EXTENT.
Replay COMPOSITOR's textureless McCLIM mirror into PASS under affine STATE. DESTINATION-TEXTURE describes the open pass for format and clipping. FRAME-TEXTURE names the bounded in-flight presentation slot whose host-visible buffers are safe to update; normally both arguments are the same texture.
(bar viewport-logical-extent)(instrument viewer)Release INSTRUMENT while VIEWER's GPU device is live.
(viewer)Logical disjunction of tests and raw truth values.
(owner canvas context device logical-width &key (title "status"))(bar &key (errorp t))A retained McCLIM command stream replayed into a caller-owned GPU pass. The caller supplies one 4x4 clip-space affine state and the actual destination texture for each frame. Semantic solids, analytic shapes, gradients, images, lattices, and Slug text are evaluated at that texture's native resolution; there is no…
(viewer instrument)Attach INSTRUMENT at VIEWER's frame boundary in explicit priority order. ADD consumes a newly offered INSTRUMENT on both success and terminal rejection. Once VIEWER begins stopping, the rejected instrument is released exactly once before APPLICATION-ATTACHMENT-CLOSED is signalled.
Logical conjunction of tests and raw truth values.
(viewer instrument)Detach and release INSTRUMENT at a frame boundary. Return true when it was attached. Release is synchronous with the caller and therefore cannot overlap a native frame which still borrows the instrument.
Logical negation of one test or raw truth value.
(viewer)(canvas function)Run FUNCTION with a timestamp on CANVAS's native frame/event thread. The initial native implementation is synchronous: the caller waits for the function's values. The protocol leaves room for a real frame scheduler.
luft's attachment and authored fields for the shared global status line.