Core

Struct Core 

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

A singleton object representing the connection between the client and the PipeWire server.

Implementations§

Source§

impl Core

Source

pub fn disconnect(&self)

Disconnect connection with the PipeWire server. This will immediately trigger the removed and destroy events on all tracked proxies. Callers should ensure that this will not result in deadlocks with their own synchronisation primitives (for example, taking a lock before disconnecting that is also taken in either of those callbacks).

Source

pub fn add_listener(&self, events: CoreEvents) -> HookId

Listen for events on the core object.

Source

pub fn remove_listener(&self, hook_id: HookId)

Remove a set of event listeners.

Source

pub fn sync(&self) -> Result<u32>

Trigger a sync message to the server, flushing all pending messages.

Source

pub fn registry(&self) -> Result<Registry>

Retrieve a Registry. This can be used to query and track objects exposed by the server.

Source

pub fn create_object( &self, factory_name: &str, type_: &str, version: u32, props: &Properties, ) -> Result<Box<dyn HasProxy>>

Create an object of the given factory type on the server.

Source

pub fn destroy(&self, object: &dyn HasProxy) -> Result<()>

Destroy a proxy.

Trait Implementations§

Source§

impl Clone for Core

Source§

fn clone(&self) -> Core

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 HasProxy for Core

Source§

fn type_(&self) -> ObjectType

The interface type of the proxy object.
Source§

fn version(&self) -> u32

The interface version of the proxy object.
Source§

fn proxy(&self) -> Proxy<Core>

Get a Proxy<T> for this object.
Source§

impl Refcounted for Core

Source§

type WeakRef = WeakCore

The type of a weak reference to the object
Source§

fn upgrade(this: &Self::WeakRef) -> Option<Self>

Try to convert a weak reference to a strong reference. If the underlying object isstill alive, returns a Some continaing the value. If the underlying object’s strong reference count dropped to zero, and was thus freed, this returns None.
Source§

fn downgrade(&self) -> Self::WeakRef

Create a weak reference to the object. This reference does not impact the object’s lifecycle, and merely allows us the option to try to retrieve the object using Self::upgrade().
Source§

impl Send for Core

Source§

impl Sync for Core

Auto Trait Implementations§

§

impl Freeze for Core

§

impl !RefUnwindSafe for Core

§

impl Unpin for Core

§

impl !UnwindSafe for Core

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.