mirror of
https://gitlab.freedesktop.org/pipewire/wireplumber.git
synced 2026-02-04 20:10:27 +01:00
This API allows grouping globals into collections. A collection is essentially a metadata object with information about all the globals it collects. Grouping globals into collections has the advantage of avoiding defining complex set of properties to match the interested globals, and they are also a more generic way to represent a set of globals that share something in common.
49 lines
1,008 B
C
49 lines
1,008 B
C
/* WirePlumber
|
|
*
|
|
* Copyright © 2025 Collabora Ltd.
|
|
* @author Julian Bouzas <julian.bouzas@ollabora.com>
|
|
*
|
|
* SPDX-License-Identifier: MIT
|
|
*/
|
|
|
|
#ifndef __WIREPLUMBER_COLLECTION_H__
|
|
#define __WIREPLUMBER_COLLECTION_H__
|
|
|
|
#include "metadata.h"
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
/*!
|
|
* \brief Flags to be used as WpObjectFeatures for WpCollection.
|
|
* \ingroup wpcollection
|
|
*/
|
|
typedef enum { /*< flags >*/
|
|
/*! Loads the collection */
|
|
WP_COLLECTION_LOADED = (1 << 0),
|
|
} WpCollectionFeatures;
|
|
|
|
/*!
|
|
* \brief The WpCollection GType
|
|
* \ingroup wpcollection
|
|
*/
|
|
#define WP_TYPE_COLLECTION (wp_collection_get_type ())
|
|
|
|
WP_API
|
|
G_DECLARE_FINAL_TYPE (WpCollection, wp_collection, WP, COLLECTION, WpObject)
|
|
|
|
WP_API
|
|
const gchar * wp_collection_get_name (WpCollection *self);
|
|
|
|
WP_API
|
|
WpMetadata *wp_collection_get_metadata (WpCollection *self);
|
|
|
|
WP_API
|
|
gboolean wp_collection_contains_global (WpCollection *self,
|
|
WpGlobalProxy *global);
|
|
|
|
WP_API
|
|
guint wp_collection_get_global_count (WpCollection *self);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif
|