PipeWire  0.3.33
protocol.h File Reference

Go to the source code of this file.

Data Structures

struct  pw_protocol_client
 
struct  pw_protocol_server
 
struct  pw_protocol_marshal
 
struct  pw_protocol_implementation
 
struct  pw_protocol_events
 

Macros

#define PW_TYPE_INFO_Protocol   "PipeWire:Protocol"
 
#define PW_TYPE_INFO_PROTOCOL_BASE   PW_TYPE_INFO_Protocol ":"
 
#define pw_protocol_client_connect(c, p, cb, d)   ((c)->connect(c,p,cb,d))
 
#define pw_protocol_client_connect_fd(c, fd, cl)   ((c)->connect_fd(c,fd,cl))
 
#define pw_protocol_client_steal_fd(c)   ((c)->steal_fd(c))
 
#define pw_protocol_client_disconnect(c)   ((c)->disconnect(c))
 
#define pw_protocol_client_destroy(c)   ((c)->destroy(c))
 
#define pw_protocol_client_set_paused(c, p)   ((c)->set_paused(c,p))
 
#define pw_protocol_server_destroy(l)   ((l)->destroy(l))
 
#define PW_PROTOCOL_MARSHAL_FLAG_IMPL   (1 << 0)
 marshal for implementations More...
 
#define PW_VERSION_PROTOCOL_IMPLEMENTATION   0
 
#define PW_VERSION_PROTOCOL_EVENTS   0
 
#define pw_protocol_new_client(p, ...)   (pw_protocol_get_implementation(p)->new_client(p,__VA_ARGS__))
 
#define pw_protocol_add_server(p, ...)   (pw_protocol_get_implementation(p)->add_server(p,__VA_ARGS__))
 
#define pw_protocol_ext(p, type, method, ...)   (((type*)pw_protocol_get_extension(p))->method( __VA_ARGS__))
 

Functions

struct pw_protocol * pw_protocol_new (struct pw_context *context, const char *name, size_t user_data_size)
 
void pw_protocol_destroy (struct pw_protocol *protocol)
 
struct pw_context * pw_protocol_get_context (struct pw_protocol *protocol)
 
void * pw_protocol_get_user_data (struct pw_protocol *protocol)
 
const struct pw_protocol_implementationpw_protocol_get_implementation (struct pw_protocol *protocol)
 
const void * pw_protocol_get_extension (struct pw_protocol *protocol)
 
void pw_protocol_add_listener (struct pw_protocol *protocol, struct spa_hook *listener, const struct pw_protocol_events *events, void *data)
 
int pw_protocol_add_marshal (struct pw_protocol *protocol, const struct pw_protocol_marshal *marshal)
 
const struct pw_protocol_marshalpw_protocol_get_marshal (struct pw_protocol *protocol, const char *type, uint32_t version, uint32_t flags)
 
struct pw_protocol * pw_context_find_protocol (struct pw_context *context, const char *name)
 

Macro Definition Documentation

◆ PW_PROTOCOL_MARSHAL_FLAG_IMPL

#define PW_PROTOCOL_MARSHAL_FLAG_IMPL   (1 << 0)

marshal for implementations

◆ PW_VERSION_PROTOCOL_EVENTS

#define PW_VERSION_PROTOCOL_EVENTS   0

◆ PW_VERSION_PROTOCOL_IMPLEMENTATION

#define PW_VERSION_PROTOCOL_IMPLEMENTATION   0