autd3-protobuf 32.0.0

gRPC protobuf for autd3
Documentation
use std::convert::Infallible;

#[derive(Debug)]
pub(crate) struct NullDatagram;

pub(crate) struct NullOperationGenerator;

impl autd3_driver::firmware::operation::OperationGenerator for NullOperationGenerator {
    type O1 = autd3_core::datagram::NullOp;
    type O2 = autd3_core::datagram::NullOp;

    fn generate(&mut self, _: &autd3_core::derive::Device) -> (Self::O1, Self::O2) {
        (autd3_core::datagram::NullOp, autd3_core::datagram::NullOp)
    }
}

impl autd3_core::datagram::Datagram for NullDatagram {
    type G = NullOperationGenerator;
    type Error = Infallible;

    fn operation_generator(
        self,
        _: &autd3_core::geometry::Geometry,
        _: bool,
    ) -> Result<Self::G, Self::Error> {
        Ok(NullOperationGenerator)
    }
}