enginerenderer 0.0.1

A zero-dependency offline rendering engine in pure Rust — CPU path tracing, BVH acceleration, 16-band spectral rendering, PBR materials, animation & video export.
Documentation
use std::path::PathBuf;

/// Tracks generated output files during runtime.
#[derive(Debug, Clone, Default)]
pub struct ResourceTracker {
    frame_outputs: Vec<PathBuf>,
}

impl ResourceTracker {
    /// Creates an empty resource tracker.
    pub fn new() -> Self {
        Self {
            frame_outputs: Vec::new(),
        }
    }

    /// Registers a new output file path.
    pub fn record_output(&mut self, path: PathBuf) {
        self.frame_outputs.push(path);
    }

    /// Returns the number of tracked outputs.
    pub fn output_count(&self) -> usize {
        self.frame_outputs.len()
    }

    /// Returns all tracked output paths.
    pub fn outputs(&self) -> &[PathBuf] {
        &self.frame_outputs
    }

    /// Returns true when at least one output was recorded.
    pub fn has_outputs(&self) -> bool {
        !self.frame_outputs.is_empty()
    }
}