25#ifndef PIPEWIRE_LOOP_H
26#define PIPEWIRE_LOOP_H
32#include <spa/support/loop.h>
33#include <spa/utils/dict.h>
54#define pw_loop_add_source(l,...) spa_loop_add_source((l)->loop,__VA_ARGS__)
55#define pw_loop_update_source(l,...) spa_loop_update_source(__VA_ARGS__)
56#define pw_loop_remove_source(l,...) spa_loop_remove_source(__VA_ARGS__)
57#define pw_loop_invoke(l,...) spa_loop_invoke((l)->loop,__VA_ARGS__)
59#define pw_loop_get_fd(l) spa_loop_control_get_fd((l)->control)
60#define pw_loop_add_hook(l,...) spa_loop_control_add_hook((l)->control,__VA_ARGS__)
61#define pw_loop_enter(l) spa_loop_control_enter((l)->control)
62#define pw_loop_iterate(l,...) spa_loop_control_iterate((l)->control,__VA_ARGS__)
63#define pw_loop_leave(l) spa_loop_control_leave((l)->control)
65#define pw_loop_add_io(l,...) spa_loop_utils_add_io((l)->utils,__VA_ARGS__)
66#define pw_loop_update_io(l,...) spa_loop_utils_update_io((l)->utils,__VA_ARGS__)
67#define pw_loop_add_idle(l,...) spa_loop_utils_add_idle((l)->utils,__VA_ARGS__)
68#define pw_loop_enable_idle(l,...) spa_loop_utils_enable_idle((l)->utils,__VA_ARGS__)
69#define pw_loop_add_event(l,...) spa_loop_utils_add_event((l)->utils,__VA_ARGS__)
70#define pw_loop_signal_event(l,...) spa_loop_utils_signal_event((l)->utils,__VA_ARGS__)
71#define pw_loop_add_timer(l,...) spa_loop_utils_add_timer((l)->utils,__VA_ARGS__)
72#define pw_loop_update_timer(l,...) spa_loop_utils_update_timer((l)->utils,__VA_ARGS__)
73#define pw_loop_add_signal(l,...) spa_loop_utils_add_signal((l)->utils,__VA_ARGS__)
74#define pw_loop_destroy_source(l,...) spa_loop_utils_destroy_source((l)->utils,__VA_ARGS__)
PipeWire loop object provides an implementation of the spa loop interfaces.
Definition: loop.h:41
struct spa_loop * loop
wrapped loop
Definition: loop.h:43
struct spa_loop_control * control
loop control
Definition: loop.h:44
struct spa_system * system
system utils
Definition: loop.h:42
struct spa_loop_utils * utils
loop utils
Definition: loop.h:45
SPA_EXPORT struct pw_loop * pw_loop_new(const struct spa_dict *props)
Create a new loop.
Definition: loop.c:55
SPA_EXPORT void pw_loop_destroy(struct pw_loop *loop)
Destroy a loop.
Definition: loop.c:158