Source code for picogl.backend.render.pipeline

"""Ordered render-pass execution (no dependency resolution)."""

from __future__ import annotations

from typing import TYPE_CHECKING

from picogl.backend.render.pass_ import RenderPass

if TYPE_CHECKING:
    from picogl.backend.gl.backend import GLBackend


[docs] class RenderPipeline: """Execute render passes in registration order.""" def __init__(self):
[docs] self.passes: list[RenderPass] = []
[docs] def add(self, render_pass: RenderPass) -> None: self.passes.append(render_pass)
[docs] def execute(self, backend: "GLBackend") -> None: for render_pass in self.passes: render_pass.execute(backend)