Struct pipewire_sys::pw_stream_events
source · #[repr(C)]pub struct pw_stream_events {
pub version: u32,
pub destroy: Option<unsafe extern "C" fn(data: *mut c_void)>,
pub state_changed: Option<unsafe extern "C" fn(data: *mut c_void, old: pw_stream_state, state: pw_stream_state, error: *const c_char)>,
pub control_info: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, control: *const pw_stream_control)>,
pub io_changed: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, area: *mut c_void, size: u32)>,
pub param_changed: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, param: *const spa_pod)>,
pub add_buffer: Option<unsafe extern "C" fn(data: *mut c_void, buffer: *mut pw_buffer)>,
pub remove_buffer: Option<unsafe extern "C" fn(data: *mut c_void, buffer: *mut pw_buffer)>,
pub process: Option<unsafe extern "C" fn(data: *mut c_void)>,
pub drained: Option<unsafe extern "C" fn(data: *mut c_void)>,
pub command: Option<unsafe extern "C" fn(data: *mut c_void, command: *const spa_command)>,
pub trigger_done: Option<unsafe extern "C" fn(data: *mut c_void)>,
}
Expand description
Events for a stream. These events are always called from the mainloop unless explicitly documented otherwise.
Fields§
§version: u32
§destroy: Option<unsafe extern "C" fn(data: *mut c_void)>
§state_changed: Option<unsafe extern "C" fn(data: *mut c_void, old: pw_stream_state, state: pw_stream_state, error: *const c_char)>
when the stream state changes
control_info: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, control: *const pw_stream_control)>
Notify information about a control.
io_changed: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, area: *mut c_void, size: u32)>
when io changed on the stream.
param_changed: Option<unsafe extern "C" fn(data: *mut c_void, id: u32, param: *const spa_pod)>
when a parameter changed
add_buffer: Option<unsafe extern "C" fn(data: *mut c_void, buffer: *mut pw_buffer)>
when a new buffer was created for this stream
remove_buffer: Option<unsafe extern "C" fn(data: *mut c_void, buffer: *mut pw_buffer)>
when a buffer was destroyed for this stream
process: Option<unsafe extern "C" fn(data: *mut c_void)>
when a buffer can be queued (for playback streams) or dequeued (for capture streams). This is normally called from the mainloop but can also be called directly from the realtime data thread if the user is prepared to deal with this.
drained: Option<unsafe extern "C" fn(data: *mut c_void)>
The stream is drained
command: Option<unsafe extern "C" fn(data: *mut c_void, command: *const spa_command)>
A command notify, Since 0.3.39:1
trigger_done: Option<unsafe extern "C" fn(data: *mut c_void)>
a trigger_process completed. Since version 0.3.40:2
Trait Implementations§
source§impl Clone for pw_stream_events
impl Clone for pw_stream_events
source§fn clone(&self) -> pw_stream_events
fn clone(&self) -> pw_stream_events
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for pw_stream_events
impl Debug for pw_stream_events
impl Copy for pw_stream_events
Auto Trait Implementations§
impl RefUnwindSafe for pw_stream_events
impl Send for pw_stream_events
impl Sync for pw_stream_events
impl Unpin for pw_stream_events
impl UnwindSafe for pw_stream_events
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more