pub struct MockImuController { /* private fields */ }Expand description
Mock IMU controller for testing
Generates synthetic IMU data with simulated motion.
Implementations§
Source§impl MockImuController
impl MockImuController
Sourcepub fn set_orientation(&mut self, roll: f32, pitch: f32, yaw: f32)
pub fn set_orientation(&mut self, roll: f32, pitch: f32, yaw: f32)
Set orientation manually for testing
Sourcepub fn sample_count(&self) -> u64
pub fn sample_count(&self) -> u64
Get sample count
Sourcepub fn reset_sample_count(&mut self)
pub fn reset_sample_count(&mut self)
Reset sample count
Trait Implementations§
Source§impl Controller for MockImuController
impl Controller for MockImuController
Source§type Config = MockImuConfig
type Config = MockImuConfig
Configuration type for this controller
Source§type Error = ControllerError
type Error = ControllerError
Error type for this controller
Source§fn init<'async_trait>(
config: Self::Config,
) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
fn init<'async_trait>(
config: Self::Config,
) -> Pin<Box<dyn Future<Output = Result<Self, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
Initialize the controller with the given configuration Read more
Source§fn start<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn start<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Start the controller Read more
Source§fn stop<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn stop<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Stop the controller Read more
Source§fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ControllerHealth> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn health_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = ControllerHealth> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Check the health status of the controller
Source§fn capabilities(&self) -> ControllerCapabilities
fn capabilities(&self) -> ControllerCapabilities
Get the capabilities of this controller Read more
Source§impl ImuController for MockImuController
impl ImuController for MockImuController
Source§fn read_imu<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<ImuData, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn read_imu<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<ImuData, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Read current IMU data Read more
Source§fn calibration_status(&self) -> CalibrationStatus
fn calibration_status(&self) -> CalibrationStatus
Get calibration status Read more
Source§fn calibrate<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<CalibrationData, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn calibrate<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<CalibrationData, Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Perform sensor calibration Read more
Source§fn save_calibration<'life0, 'life1, 'async_trait>(
&'life0 self,
_path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn save_calibration<'life0, 'life1, 'async_trait>(
&'life0 self,
_path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Save calibration data to persistent storage
Source§fn load_calibration<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn load_calibration<'life0, 'life1, 'async_trait>(
&'life0 mut self,
_path: &'life1 str,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Load calibration data from persistent storage
Source§fn reset_fusion<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn reset_fusion<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<(), Self::Error>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Reset sensor fusion (if supported) Read more
Source§fn temperature<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<f32>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn temperature<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Option<f32>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Get sensor temperature if available
Source§fn has_magnetometer(&self) -> bool
fn has_magnetometer(&self) -> bool
Check if the IMU has a magnetometer
Source§fn has_absolute_orientation(&self) -> bool
fn has_absolute_orientation(&self) -> bool
Check if the IMU provides absolute orientation
Auto Trait Implementations§
impl Freeze for MockImuController
impl RefUnwindSafe for MockImuController
impl Send for MockImuController
impl Sync for MockImuController
impl Unpin for MockImuController
impl UnwindSafe for MockImuController
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more