Trait Renderer

Source
pub trait Renderer {
    // Required methods
    fn render(
        &mut self,
        root: &Node,
        context: &mut RenderContext,
    ) -> Result<(), Error>;
    fn name(&self) -> &str;

    // Provided methods
    fn init(&mut self) -> Result<(), Error> { ... }
    fn render_selective(
        &mut self,
        root: &Node,
        context: &mut RenderContext,
        _dirty_components: &[ComponentId],
    ) -> Result<(), Error> { ... }
    fn flush(&mut self) -> Result<(), Error> { ... }
    fn cleanup(&mut self) -> Result<(), Error> { ... }
    fn get_stats(&self) -> RenderStats { ... }
    fn reset_stats(&mut self) { ... }
    fn set_quality_level(&mut self, _level: QualityLevel) -> Result<(), Error> { ... }
}
Expand description

Enhanced renderer interface with performance monitoring

Required Methods§

Source

fn render( &mut self, root: &Node, context: &mut RenderContext, ) -> Result<(), Error>

Render a component tree with context and performance optimizations

Source

fn name(&self) -> &str

Get the renderer name

Provided Methods§

Source

fn init(&mut self) -> Result<(), Error>

Initialize the renderer

Source

fn render_selective( &mut self, root: &Node, context: &mut RenderContext, _dirty_components: &[ComponentId], ) -> Result<(), Error>

Render only dirty components for performance

Source

fn flush(&mut self) -> Result<(), Error>

Flush any pending operations

Source

fn cleanup(&mut self) -> Result<(), Error>

Clean up resources

Source

fn get_stats(&self) -> RenderStats

Get render statistics

Source

fn reset_stats(&mut self)

Reset render statistics

Source

fn set_quality_level(&mut self, _level: QualityLevel) -> Result<(), Error>

Set render quality/performance level

Implementors§