MCPcopy Create free account
hub / github.com/CapSoftware/Cap / drainAndRenderLatestSharedWebGPU

Function drainAndRenderLatestSharedWebGPU

apps/desktop/src/utils/frame-worker.ts:461–480  ·  view source on GitHub ↗
(maxDrain: number)

Source from the content-addressed store, hash-verified

459}
460
461function drainAndRenderLatestSharedWebGPU(maxDrain: number): boolean {
462 if (!consumer || !useSharedBuffer || consumer.isShutdown()) return false;
463 if (renderMode !== "webgpu" || !webgpuRenderer) return false;
464
465 let latest: { bytes: Uint8Array; release: () => void } | null = null;
466
467 for (let i = 0; i < maxDrain; i += 1) {
468 const borrowed = consumer.borrow(0);
469 if (!borrowed) break;
470
471 if (latest) {
472 latest.release();
473 }
474 latest = { bytes: borrowed.data, release: borrowed.release };
475 }
476
477 if (!latest) return false;
478
479 return renderBorrowedWebGPU(latest.bytes, latest.release);
480}
481
482function queueFrameFromBytes(
483 bytes: Uint8Array,

Callers 1

renderLoopFunction · 0.85

Calls 4

renderBorrowedWebGPUFunction · 0.85
isShutdownMethod · 0.80
borrowMethod · 0.80
releaseMethod · 0.80

Tested by

no test coverage detected