Trait autd3::derive::DatagramST

source ·
pub trait DatagramST {
    type O1: Operation;
    type O2: Operation;
    type G: OperationGenerator<O1 = Self::O1, O2 = Self::O2>;

    // Required methods
    fn operation_generator_with_segment(
        self,
        geometry: &Geometry,
        segment: Segment,
        transition_mode: Option<TransitionMode>,
    ) -> Result<Self::G, AUTDInternalError>;
    fn timeout(&self) -> Option<Duration>;

    // Provided methods
    fn parallel_threshold(&self) -> Option<usize> { ... }
    fn trace(&self, _geometry: &Geometry) { ... }
}

Required Associated Types§

source

type O1: Operation

source

type O2: Operation

source

type G: OperationGenerator<O1 = Self::O1, O2 = Self::O2>

Required Methods§

source

fn operation_generator_with_segment( self, geometry: &Geometry, segment: Segment, transition_mode: Option<TransitionMode>, ) -> Result<Self::G, AUTDInternalError>

source

fn timeout(&self) -> Option<Duration>

Provided Methods§

source

fn parallel_threshold(&self) -> Option<usize>

source

fn trace(&self, _geometry: &Geometry)

Implementations on Foreign Types§

source§

impl DatagramST for Box<dyn Modulation>

Implementors§

source§

impl DatagramST for Custom

source§

impl DatagramST for Static

source§

impl<G> DatagramST for GainSTM<G>
where G: Gain,

§

type O1 = GainSTMOp

§

type O2 = NullOp

§

type G = GainSTMOperationGenerator<G>

source§

impl<M> DatagramST for Cache<M>
where M: Modulation,

source§

impl<M> DatagramST for RadiationPressure<M>
where M: Modulation,

source§

impl<M, F> DatagramST for Transform<M, F>
where M: Modulation, F: Fn(usize, u8) -> u8,

source§

impl<S: SamplingMode> DatagramST for Fourier<S>

source§

impl<S: SamplingMode> DatagramST for Mixer<S>

source§

impl<S: SamplingMode> DatagramST for Sine<S>

source§

impl<S: SamplingMode> DatagramST for Square<S>

source§

impl<const N: usize> DatagramST for FociSTM<N>

§

type O1 = FociSTMOp<N>

§

type O2 = NullOp

§

type G = FociSTMOperationGenerator<N>