Skip to main content

mecha10_sim/sim/
generator.rs

1//! Simulation generator - main orchestration
2
3use anyhow::Result;
4use std::path::Path;
5
6use super::selector::EnvironmentSelector;
7
8pub struct SimulationGenerator {
9    selector: EnvironmentSelector,
10}
11
12impl SimulationGenerator {
13    /// Create a new generator, loading the catalog from `<robot_tasks_dir>/catalog.json` under a
14    /// freshly-fetched `mecha10-assets` extraction.
15    pub fn new(robot_tasks_dir: &Path) -> Result<Self> {
16        let selector = EnvironmentSelector::new(robot_tasks_dir)?;
17        Ok(Self { selector })
18    }
19}