pub trait TestbedPlugin {
fn init_plugin(&mut self);
fn init_graphics(
&mut self,
graphics: &mut GraphicsManager,
commands: &mut Commands<'_, '_>,
meshes: &mut Assets<Mesh>,
materials: &mut Assets<ColorMaterial>,
components: &mut Query<'_, '_, (&mut Transform,)>,
harness: &mut Harness
);
fn clear_graphics(
&mut self,
graphics: &mut GraphicsManager,
commands: &mut Commands<'_, '_>
);
fn run_callbacks(&mut self, harness: &mut Harness);
fn step(&mut self, physics: &mut PhysicsState);
fn draw(
&mut self,
graphics: &mut GraphicsManager,
commands: &mut Commands<'_, '_>,
meshes: &mut Assets<Mesh>,
materials: &mut Assets<ColorMaterial>,
components: &mut Query<'_, '_, (&mut Transform,)>,
harness: &mut Harness
);
fn update_ui(
&mut self,
ui_context: &EguiContext,
harness: &mut Harness,
graphics: &mut GraphicsManager,
commands: &mut Commands<'_, '_>,
meshes: &mut Assets<Mesh>,
materials: &mut Assets<ColorMaterial>,
components: &mut Query<'_, '_, (&mut Transform,)>
);
fn profiling_string(&self) -> String;
}