///|
/// Replay all queued commands through this renderer, preserving checked errors.
pub fn Renderer::draw_pipeline_result(
self : Renderer,
pipeline : RenderPipeline,
) -> Result[RenderPipelineReplayResult, RenderPipelineReplayError] {
pipeline.replay_result(self)
}
///|
/// Replay a pipeline through resources, preserving checked replay errors.
pub fn Renderer::draw_pipeline_with_renderer_resources_result(
self : Renderer,
pipeline : RenderPipeline,
resources : RendererResources,
) -> Result[
RenderPipelineResourceReplayResult,
RenderPipelineResourceReplayError,
] {
pipeline.replay_with_renderer_resources_result(self, resources)
}
///|
/// Replay a pipeline through resources and a font loader, preserving checked replay errors.
pub fn[L : @text.FontLoader] Renderer::draw_pipeline_with_font_loader_resources_result(
self : Renderer,
pipeline : RenderPipeline,
resources : RendererResources,
loader : L,
) -> Result[
RenderPipelineResourceReplayResult,
RenderPipelineResourceReplayError,
] {
pipeline.replay_with_font_loader_resources_result(self, resources, loader)
}
///|
/// Analyze a pipeline against this renderer's canvas dimensions.
pub fn Renderer::analyze_pipeline(
self : Renderer,
pipeline : RenderPipeline,
) -> RenderPipelineAnalysis {
let pixmap = self.get_canvas().get_pixmap()
pipeline.analyze(pixmap.get_width(), pixmap.get_height())
}
///|
/// Build a scheduler-facing batch plan against this renderer's canvas size.
pub fn Renderer::plan_pipeline_batches(
self : Renderer,
pipeline : RenderPipeline,
) -> RenderPipelineBatchPlan {
let pixmap = self.get_canvas().get_pixmap()
pipeline.batch_plan(pixmap.get_width(), pixmap.get_height())
}
///|
/// Pre-resolve image and parsed-font text resource uses for a pipeline.
pub fn Renderer::plan_pipeline_resources(
self : Renderer,
pipeline : RenderPipeline,
) -> RenderPipelineResourcePlan {
ignore(self)
pipeline.resource_plan()
}