Skip to main content

plan_pool_slots

Function plan_pool_slots 

Source
pub fn plan_pool_slots(
    gates: PoolGates,
    render_extent: (u32, u32),
    output_extent: (u32, u32),
) -> Result<Vec<TransientSlot>, String>
Expand description

The alias-slot list a pool built for gates should allocate, taken straight from the graph: the grouping and each member’s extent, format and usage come from one planning graph, so init and resize cannot drift apart and neither can the graph and the resource it describes.

render_extent sizes the render-resolution transients and output_extent is the drawable the half-resolution ones scale off; under temporal upscaling they differ, which is why both are passed rather than derived.

A planning graph that does not compile is a hard error rather than an empty pool: every consumer reads its target back out by label, so silently pooling nothing would fail later and further from the cause.