RxStreamer

Trait RxStreamer 

Source
pub trait RxStreamer: Send {
    // Required methods
    fn mtu(&self) -> Result<usize, Error>;
    fn activate_at(&mut self, time_ns: Option<i64>) -> Result<(), Error>;
    fn deactivate_at(&mut self, time_ns: Option<i64>) -> Result<(), Error>;
    fn read(
        &mut self,
        buffers: &mut [&mut [Complex32]],
        timeout_us: i64,
    ) -> Result<usize, Error>;

    // Provided methods
    fn activate(&mut self) -> Result<(), Error> { ... }
    fn deactivate(&mut self) -> Result<(), Error> { ... }
}
Expand description

Receive samples from a Device through one or multiple channels.

Required Methods§

Source

fn mtu(&self) -> Result<usize, Error>

Get the stream’s maximum transmission unit (MTU) in number of elements.

The MTU specifies the maximum payload transfer in a stream operation. This value can be used as a stream buffer allocation size that can best optimize throughput given the underlying stream implementation.

Source

fn activate_at(&mut self, time_ns: Option<i64>) -> Result<(), Error>

Activate a stream.

Call activate to enable a stream before using read()

§Arguments:
  • time_ns – optional activation time in nanoseconds from the time the function is called.
Source

fn deactivate_at(&mut self, time_ns: Option<i64>) -> Result<(), Error>

Deactivate a stream. The implementation will control switches or halt data flow.

§Arguments:
  • time_ns – optional deactivation time in nanoseconds from the time the function is called.
Source

fn read( &mut self, buffers: &mut [&mut [Complex32]], timeout_us: i64, ) -> Result<usize, Error>

Read samples from the stream into the provided buffers.

buffers contains one destination slice for each channel of this stream.

Returns the number of samples read, which may be smaller than the size of the passed arrays.

§Panics
  • If buffers is not the same length as the channels array passed to Device::rx_streamer that created the streamer.

Provided Methods§

Source

fn activate(&mut self) -> Result<(), Error>

Activate a stream.

Call activate to enable a stream before using read()

Source

fn deactivate(&mut self) -> Result<(), Error>

Deactivate a stream. The implementation will control switches or halt data flow.

Implementors§