Session Items

WpSessionItem

GObject
    ╰──WpObject
        ╰──WpSessionItem

Members

parent_instance (WpObject) –
No description available

Class structure

WpSessionItemClass

Fields
parent_class (WpObjectClass) –
No description available

Methods

wp_session_item_configure

gboolean
wp_session_item_configure (WpSessionItem * self,
                           WpProperties * props)

Parameters:

self

the session item

props ( [transfer: full])

the properties used to configure the item

Returns

TRUE on success, FALSE if the item could not be configured


wp_session_item_get_associated_proxy

gpointer
wp_session_item_get_associated_proxy (WpSessionItem * self,
                                      GType proxy_type)

An associated proxy is a WpProxy subclass instance that is somehow related to this item. For example:

  • An exported WpSiEndpoint should have at least:
  • In cases where the item wraps a single PipeWire node, it should also have an associated WpNode

Parameters:

self

the session item

proxy_type

a WpProxy subclass GType

Returns ( [nullable][transfer: full][typeWpProxy])

the associated proxy of the specified proxy_type, or NULL if there is no association to such a proxy


wp_session_item_get_associated_proxy_id

guint32
wp_session_item_get_associated_proxy_id (WpSessionItem * self,
                                         GType proxy_type)

Parameters:

self

the session item

proxy_type

a WpProxy subclass GType

Returns

the bound id of the associated proxy of the specified proxy_type, or SPA_ID_INVALID if there is no association to such a proxy


wp_session_item_get_id

guint
wp_session_item_get_id (WpSessionItem * self)

Gets the unique Id of the session item

Parameters:

self

the session item

Returns
No description available

wp_session_item_get_properties

WpProperties *
wp_session_item_get_properties (WpSessionItem * self)

Parameters:

self

the session item

Returns ( [transfer: full])

the item's properties.


wp_session_item_is_configured

gboolean
wp_session_item_is_configured (WpSessionItem * self)

Parameters:

self

the session item

Returns

TRUE if the item is configured, FALSE otherwise


wp_session_item_register

wp_session_item_register (WpSessionItem * self)

Registers the session item to its associated core

Parameters:

self ( [transfer: full])

the session item


wp_session_item_remove

wp_session_item_remove (WpSessionItem * self)

Removes the session item from the registry

Parameters:

self ( [transfer: none])

the session item


wp_session_item_reset

wp_session_item_reset (WpSessionItem * self)

Resets the session item. This essentially removes the configuration and and deactivates all active features.

Parameters:

self

the session item


wp_session_item_set_properties

wp_session_item_set_properties (WpSessionItem * self,
                                WpProperties * props)

Sets the item's properties. This should only be done by sub-classes after the configuration has been done.

Parameters:

self

the session item

props ( [transfer: full])

the new properties to set


Functions

wp_session_item_handle_proxy_destroyed

wp_session_item_handle_proxy_destroyed (WpProxy * proxy,
                                        WpSessionItem * item)

Helper callback for sub-classes that deffers and unexports the session item. Only meant to be used when the pipewire proxy destroyed signal is triggered.

Parameters:

proxy

the proxy that was destroyed by the server

item

the associated session item


wp_session_item_make

WpSessionItem *
wp_session_item_make (WpCore * core,
                      const gchar* factory_name)

Finds the factory associated with the given name from the core and uses it to construct a new WpSessionItem.

Parameters:

core

the WpCore

factory_name

the name of the factory to be used for constructing the object

Returns ( [transfer: full][nullable])

the new session item


Properties

id

“id” guint

Flags : Read


properties

“properties” WpProperties *

Flags : Read


Virtual Methods

configure

gboolean
configure (WpSessionItem * self,
           WpProperties * props)

See wp_session_item_configure

Parameters:

self
No description available
props
No description available
Returns
No description available

disable_active

disable_active (WpSessionItem * self)

disables the active feature of the session item

Parameters:

self
No description available

disable_exported

disable_exported (WpSessionItem * self)

disables the exported feature of the session item

Parameters:

self
No description available

enable_active

enable_active (WpSessionItem * self,
               WpTransition * transition)

enables the active feature of the session item

Parameters:

self
No description available
transition
No description available

enable_exported

enable_exported (WpSessionItem * self,
                 WpTransition * transition)

enables the exported feature of the session item

Parameters:

self
No description available
transition
No description available

get_associated_proxy

gpointer
get_associated_proxy (WpSessionItem * self,
                      GType proxy_type)

See wp_session_item_get_associated_proxy

Parameters:

self
No description available
proxy_type
No description available
Returns
No description available

reset

reset (WpSessionItem * self)

See wp_session_item_reset

Parameters:

self
No description available

Enumerations

WpSessionItemFeatures

Flags to be used as WpObjectFeatures for WpSessionItem subclasses.

Members
WP_SESSION_ITEM_FEATURE_ACTIVE (1) –
No description available
WP_SESSION_ITEM_FEATURE_EXPORTED (2) –
No description available

Constants

WP_TYPE_SESSION_ITEM

#define WP_TYPE_SESSION_ITEM (wp_session_item_get_type ())

The WpSessionItem GType


The results of the search are