autd3_driver/datagram/
synchronize.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 synchronize the devices.
11#[derive(Default, Debug)]
12pub struct Synchronize {}
13
14impl Synchronize {
15    /// Creates a new [`Synchronize`] instance.
16    #[must_use]
17    pub const fn new() -> Self {
18        Self {}
19    }
20}
21
22impl Datagram for Synchronize {
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}