pub struct Laser<R, D, M, I, S, F> { /* private fields */ }
Implementations§
Source§impl<R, D, M, I, S, F> Laser<R, D, M, I, S, F>
impl<R, D, M, I, S, F> Laser<R, D, M, I, S, F>
pub fn new_with_handler_between_retries( n_reset: R, n_disable: D, n_ms: M, srq: I, serial: S, between_retries: Option<F>, ) -> Result<Self, Error<S, I, R, M>>
pub fn release(self) -> (R, D, M, I, S)
pub fn serial(&mut self) -> &mut S
pub fn current_command(&self) -> Option<Request>
pub fn step(&mut self) -> Result<Response, Error<S, I, R, M>>
pub fn srq(&self) -> Result<bool, <I as InputPin>::Error>
pub fn disable(&mut self) -> Result<(), <D as OutputPin>::Error>
pub fn enable(&mut self) -> Result<(), <D as OutputPin>::Error>
pub fn reset(&mut self) -> Result<(), <R as OutputPin>::Error>
pub fn reset_comms(&mut self) -> Result<(), <M as OutputPin>::Error>
pub fn send(&mut self, command: Request)
pub fn wait_for_clear(&mut self) -> Result<(), Error<S, I, R, M>>
Trait Implementations§
Auto Trait Implementations§
impl<R, D, M, I, S, F> Freeze for Laser<R, D, M, I, S, F>
impl<R, D, M, I, S, F> RefUnwindSafe for Laser<R, D, M, I, S, F>where
R: RefUnwindSafe,
D: RefUnwindSafe,
M: RefUnwindSafe,
I: RefUnwindSafe,
S: RefUnwindSafe,
F: RefUnwindSafe,
impl<R, D, M, I, S, F> Send for Laser<R, D, M, I, S, F>
impl<R, D, M, I, S, F> Sync for Laser<R, D, M, I, S, F>
impl<R, D, M, I, S, F> Unpin for Laser<R, D, M, I, S, F>
impl<R, D, M, I, S, F> UnwindSafe for Laser<R, D, M, I, S, F>
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