autd3_driver/datagram/
clear.rs

1use std::convert::Infallible;
2
3use autd3_core::{
4    datagram::{Datagram, DeviceFilter},
5    derive::FirmwareLimits,
6    environment::Environment,
7    geometry::Geometry,
8};
9
10/// [`Datagram`] to clear all data in the devices.
11#[derive(Default, Debug)]
12pub struct Clear {}
13
14impl Clear {
15    /// Creates a new [`Clear`].
16    #[must_use]
17    pub const fn new() -> Self {
18        Self {}
19    }
20}
21
22impl Datagram for Clear {
23    type G = Self;
24    type Error = Infallible;
25
26    fn operation_generator(
27        self,
28        _: &Geometry,
29        _: &Environment,
30        _: &DeviceFilter,
31        _: &FirmwareLimits,
32    ) -> Result<Self::G, Self::Error> {
33        Ok(self)
34    }
35}