PipeWire: control.h Source File

PipeWire 0.3.69

Loading...
Searching...
No Matches
src/pipewire/control.h
Go to the documentation of this file.
1/* PipeWire */
2/* SPDX-FileCopyrightText: Copyright © 2018 Wim Taymans */
3/* SPDX-License-Identifier: MIT */
4
5#ifndef PIPEWIRE_CONTROL_H
6#define PIPEWIRE_CONTROL_H
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12#include <spa/utils/hook.h>
13
23struct pw_control;
24
25#include <pipewire/impl.h>
26
28struct pw_control_events {
29#define PW_VERSION_CONTROL_EVENTS 0
30 uint32_t version;
31
33 void (*destroy) (void *data);
34
36 void (*free) (void *data);
37
39 void (*linked) (void *data, struct pw_control *other);
41 void (*unlinked) (void *data, struct pw_control *other);
42
43};
44
46struct pw_impl_port *pw_control_get_port(struct pw_control *control);
47
49void pw_control_add_listener(struct pw_control *control,
50 struct spa_hook *listener,
51 const struct pw_control_events *events,
52 void *data);
53
58#ifdef __cplusplus
59}
60#endif
61
62#endif /* PIPEWIRE_CONTROL_H */
pw_control_add_listener
void pw_control_add_listener(struct pw_control *control, struct spa_hook *listener, const struct pw_control_events *events, void *data)
Add an event listener on the control.
Definition: control.c:118
pw_control_get_port
struct pw_impl_port * pw_control_get_port(struct pw_control *control)
Get the control parent port or NULL when not set.
Definition: control.c:112
hook.h
spa/utils/hook.h
impl.h
pipewire/impl.h
pw_control_events
Port events, use pw_control_add_listener.
Definition: src/pipewire/control.h:33
pw_control_events::unlinked
void(* unlinked)(void *data, struct pw_control *other)
control is unlinked from another control
Definition: src/pipewire/control.h:47
pw_control_events::version
uint32_t version
Definition: src/pipewire/control.h:36
pw_control_events::free
void(* free)(void *data)
The control is freed.
Definition: src/pipewire/control.h:42
pw_control_events::destroy
void(* destroy)(void *data)
The control is destroyed.
Definition: src/pipewire/control.h:39
pw_control_events::linked
void(* linked)(void *data, struct pw_control *other)
control is linked to another control
Definition: src/pipewire/control.h:45
pw_control
pw_impl_port
spa_hook
A hook, contains the structure with functions and the data passed to the functions.
Definition: hook.h:331