autd3_driver/datagram/
segment.rs1use std::convert::Infallible;
2
3use autd3_core::{
4 datagram::{Datagram, DeviceFilter, Segment, TransitionMode},
5 derive::FirmwareLimits,
6 geometry::Geometry,
7};
8
9#[derive(Debug, Clone, Copy)]
13pub enum SwapSegment {
14 Gain(Segment, TransitionMode),
18 Modulation(Segment, TransitionMode),
22 FociSTM(Segment, TransitionMode),
26 GainSTM(Segment, TransitionMode),
30}
31
32impl Datagram for SwapSegment {
33 type G = Self;
34 type Error = Infallible;
35
36 fn operation_generator(
37 self,
38 _: &Geometry,
39 _: &DeviceFilter,
40 _: &FirmwareLimits,
41 ) -> Result<Self::G, Self::Error> {
42 Ok(self)
43 }
44}