Skip to main content

StreamHandle

Struct StreamHandle 

Source
pub struct StreamHandle { /* private fields */ }
Expand description

A handle to an opened RtAudio stream.

When this struct is dropped, the stream will automatically be stopped and closed.

Only one stream can exist at a time.

Implementations§

Source§

impl StreamHandle

Source

pub fn info(&self) -> &StreamInfo

Information about the stream.

Source

pub fn has_started(&self) -> bool

Returns true if the stream has been started.

Source

pub fn start<F>(&mut self, data_callback: F) -> Result<(), RtAudioError>
where F: FnMut(Buffers<'_>, &StreamInfo, StreamStatus) + Send + 'static,

Start the stream.

  • data_callback - This gets called whenever there are new buffers to process.

If an error is returned, then it means that the stream failed to start.

§Panics

Panics if the stream has already been started. (Use StreamHandle::has_started to check if it has been started already.)

Source

pub fn stop(&mut self)

Stop the stream.

This will block the calling thread until the stream is stopped. After which the data_callback passed into Stream::start() will be dropped.

This does not close the stream.

Source

pub fn close(self) -> Host

Close the stream.

If the stream is running, this will stop the stream first. In that case, this will block the calling thread until the stream is stopped. After which the data_callback passed into Stream::start() will be dropped.

Trait Implementations§

Source§

impl Drop for StreamHandle

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

fn pin_drop(self: Pin<&mut Self>)

🔬This is a nightly-only experimental API. (pin_ergonomics)
Execute the destructor for this type, but different to Drop::drop, it requires self to be pinned. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more