20 #ifndef __PIPEWIRE_PROXY_H__ 21 #define __PIPEWIRE_PROXY_H__ 27 #include <spa/utils/hook.h> 103 #define PW_VERSION_PROXY_EVENTS 0 115 size_t user_data_size );
119 struct spa_hook *listener,
126 struct spa_hook *listener,
148 #define pw_proxy_notify(p,type,event,...) spa_hook_list_call(pw_proxy_get_proxy_listeners(p),type,event,## __VA_ARGS__) 149 #define pw_proxy_do(p,type,method,...) ((type*) pw_proxy_get_marshal(p)->method_marshal)->method(p, ## __VA_ARGS__) struct pw_protocol * pw_proxy_get_protocol(struct pw_proxy *proxy)
Get the protocol used for the proxy.
Definition: proxy.c:88
Manages protocols and their implementation.
void * pw_proxy_get_user_data(struct pw_proxy *proxy)
Get the user_data.
Definition: proxy.c:78
Definition: protocol.h:70
void pw_proxy_add_listener(struct pw_proxy *proxy, struct spa_hook *listener, const struct pw_proxy_events *events, void *data)
Add an event listener to proxy.
Definition: proxy.c:93
Represents an object on the client side.
uint32_t pw_proxy_get_id(struct pw_proxy *proxy)
Get the local id of the proxy.
Definition: proxy.c:83
Proxy events, use pw_proxy_add_listener.
Definition: proxy.h:102
void pw_proxy_add_proxy_listener(struct pw_proxy *proxy, struct spa_hook *listener, const void *events, void *data)
Add a listener for the events received from the remote resource.
Definition: proxy.c:101
void(* destroy)(void *data)
The proxy is destroyed.
Definition: proxy.h:107
void pw_proxy_destroy(struct pw_proxy *proxy)
Destroy a proxy object.
Definition: proxy.c:117
struct spa_hook_list * pw_proxy_get_proxy_listeners(struct pw_proxy *proxy)
Get the listener of proxy.
Definition: proxy.c:130
uint32_t version
Definition: proxy.h:104
struct pw_proxy * pw_proxy_new(struct pw_proxy *factory, uint32_t type, size_t user_data_size)
Create a proxy object with a given id and type.
Definition: proxy.c:46
const struct pw_protocol_marshal * pw_proxy_get_marshal(struct pw_proxy *proxy)
Get the marshal functions for the proxy.
Definition: proxy.c:135