Struct pw_buffer

Source
#[repr(C)]
pub struct pw_buffer { pub buffer: *mut spa_buffer, pub user_data: *mut c_void, pub size: u64, pub requested: u64, pub time: u64, }
Expand description

a buffer structure obtained from pw_stream_dequeue_buffer(). The size of this structure can grow as more fields are added in the future

Fields§

§buffer: *mut spa_buffer

< the spa buffer

§user_data: *mut c_void

< user data attached to the buffer. The user of the stream can set custom data associated with the buffer, typically in the add_buffer event. Any cleanup should be performed in the remove_buffer event. The user data is returned unmodified each time a buffer is dequeued.

§size: u64

< This field is set by the user and the sum of all queued buffers is returned in the time info. For audio, it is advised to use the number of frames in the buffer for this field.

§requested: u64

< For playback streams, this field contains the suggested amount of data to provide. For audio streams this will be the amount of frames required by the resampler. This field is 0 when no suggestion is provided. Since 0.3.49

§time: u64

< For capture streams, this field contains the cycle time in nanoseconds when this buffer was queued in the stream. It can be compared against the pw_time values or pw_stream_get_nsec() Since 1.0.5

Trait Implementations§

Source§

impl Clone for pw_buffer

Source§

fn clone(&self) -> pw_buffer

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for pw_buffer

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Copy for pw_buffer

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

type Error = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.