use std::fmt::Debug;
pub trait LogData: Clone + Debug + Default {
fn merge(&mut self, other: &Self);
fn clear(&mut self);
fn episode_count(&self) -> f32;
}
pub trait VecEnvironment {
fn num_envs(&self) -> usize;
fn observation_size(&self) -> usize;
fn num_actions(&self) -> Option<usize>;
fn reset(&mut self, seed: u64);
fn step(&mut self, actions: &[f32]);
fn write_observations(&self, buffer: &mut [f32]);
fn write_rewards(&self, buffer: &mut [f32]);
fn write_terminals(&self, buffer: &mut [u8]);
fn write_truncations(&self, buffer: &mut [u8]);
}