1 #ifndef foopulseproplisthfoo
2 #define foopulseproplisthfoo
25 #include <sys/types.h>
27 #include <pulse/cdecl.h>
37 #define PA_PROP_MEDIA_NAME "media.name"
40 #define PA_PROP_MEDIA_TITLE "media.title"
43 #define PA_PROP_MEDIA_ARTIST "media.artist"
46 #define PA_PROP_MEDIA_COPYRIGHT "media.copyright"
49 #define PA_PROP_MEDIA_SOFTWARE "media.software"
52 #define PA_PROP_MEDIA_LANGUAGE "media.language"
55 #define PA_PROP_MEDIA_FILENAME "media.filename"
59 #define PA_PROP_MEDIA_ICON "media.icon"
63 #define PA_PROP_MEDIA_ICON_NAME "media.icon_name"
66 #define PA_PROP_MEDIA_ROLE "media.role"
69 #define PA_PROP_FILTER_WANT "filter.want"
72 #define PA_PROP_FILTER_APPLY "filter.apply"
75 #define PA_PROP_FILTER_SUPPRESS "filter.suppress"
78 #define PA_PROP_EVENT_ID "event.id"
81 #define PA_PROP_EVENT_DESCRIPTION "event.description"
84 #define PA_PROP_EVENT_MOUSE_X "event.mouse.x"
87 #define PA_PROP_EVENT_MOUSE_Y "event.mouse.y"
90 #define PA_PROP_EVENT_MOUSE_HPOS "event.mouse.hpos"
93 #define PA_PROP_EVENT_MOUSE_VPOS "event.mouse.vpos"
96 #define PA_PROP_EVENT_MOUSE_BUTTON "event.mouse.button"
99 #define PA_PROP_WINDOW_NAME "window.name"
102 #define PA_PROP_WINDOW_ID "window.id"
106 #define PA_PROP_WINDOW_ICON "window.icon"
110 #define PA_PROP_WINDOW_ICON_NAME "window.icon_name"
113 #define PA_PROP_WINDOW_X "window.x"
116 #define PA_PROP_WINDOW_Y "window.y"
119 #define PA_PROP_WINDOW_WIDTH "window.width"
122 #define PA_PROP_WINDOW_HEIGHT "window.height"
125 #define PA_PROP_WINDOW_HPOS "window.hpos"
128 #define PA_PROP_WINDOW_VPOS "window.vpos"
131 #define PA_PROP_WINDOW_DESKTOP "window.desktop"
134 #define PA_PROP_WINDOW_X11_DISPLAY "window.x11.display"
137 #define PA_PROP_WINDOW_X11_SCREEN "window.x11.screen"
140 #define PA_PROP_WINDOW_X11_MONITOR "window.x11.monitor"
143 #define PA_PROP_WINDOW_X11_XID "window.x11.xid"
146 #define PA_PROP_APPLICATION_NAME "application.name"
149 #define PA_PROP_APPLICATION_ID "application.id"
152 #define PA_PROP_APPLICATION_VERSION "application.version"
156 #define PA_PROP_APPLICATION_ICON "application.icon"
160 #define PA_PROP_APPLICATION_ICON_NAME "application.icon_name"
163 #define PA_PROP_APPLICATION_LANGUAGE "application.language"
166 #define PA_PROP_APPLICATION_PROCESS_ID "application.process.id"
169 #define PA_PROP_APPLICATION_PROCESS_BINARY "application.process.binary"
172 #define PA_PROP_APPLICATION_PROCESS_USER "application.process.user"
175 #define PA_PROP_APPLICATION_PROCESS_HOST "application.process.host"
178 #define PA_PROP_APPLICATION_PROCESS_MACHINE_ID "application.process.machine_id"
181 #define PA_PROP_APPLICATION_PROCESS_SESSION_ID "application.process.session_id"
184 #define PA_PROP_DEVICE_STRING "device.string"
187 #define PA_PROP_DEVICE_API "device.api"
190 #define PA_PROP_DEVICE_DESCRIPTION "device.description"
193 #define PA_PROP_DEVICE_BUS_PATH "device.bus_path"
196 #define PA_PROP_DEVICE_SERIAL "device.serial"
199 #define PA_PROP_DEVICE_VENDOR_ID "device.vendor.id"
202 #define PA_PROP_DEVICE_VENDOR_NAME "device.vendor.name"
205 #define PA_PROP_DEVICE_PRODUCT_ID "device.product.id"
208 #define PA_PROP_DEVICE_PRODUCT_NAME "device.product.name"
211 #define PA_PROP_DEVICE_CLASS "device.class"
214 #define PA_PROP_DEVICE_FORM_FACTOR "device.form_factor"
217 #define PA_PROP_DEVICE_BUS "device.bus"
221 #define PA_PROP_DEVICE_ICON "device.icon"
225 #define PA_PROP_DEVICE_ICON_NAME "device.icon_name"
228 #define PA_PROP_DEVICE_ACCESS_MODE "device.access_mode"
231 #define PA_PROP_DEVICE_MASTER_DEVICE "device.master_device"
234 #define PA_PROP_DEVICE_BUFFERING_BUFFER_SIZE "device.buffering.buffer_size"
237 #define PA_PROP_DEVICE_BUFFERING_FRAGMENT_SIZE "device.buffering.fragment_size"
240 #define PA_PROP_DEVICE_PROFILE_NAME "device.profile.name"
243 #define PA_PROP_DEVICE_INTENDED_ROLES "device.intended_roles"
246 #define PA_PROP_DEVICE_PROFILE_DESCRIPTION "device.profile.description"
249 #define PA_PROP_MODULE_AUTHOR "module.author"
252 #define PA_PROP_MODULE_DESCRIPTION "module.description"
255 #define PA_PROP_MODULE_USAGE "module.usage"
258 #define PA_PROP_MODULE_VERSION "module.version"
261 #define PA_PROP_FORMAT_SAMPLE_FORMAT "format.sample_format"
264 #define PA_PROP_FORMAT_RATE "format.rate"
267 #define PA_PROP_FORMAT_CHANNELS "format.channels"
270 #define PA_PROP_FORMAT_CHANNEL_MAP "format.channel_map"
342 #define PA_UPDATE_SET PA_UPDATE_SET
343 #define PA_UPDATE_MERGE PA_UPDATE_MERGE
344 #define PA_UPDATE_REPLACE PA_UPDATE_REPLACE
int int pa_proplist_set(pa_proplist *p, const char *key, const void *data, size_t nbytes)
Append a new arbitrary data entry to the property list, possibly overwriting an already existing entr...
void pa_proplist_clear(pa_proplist *p)
Remove all entries from the property list object.
void pa_proplist_free(pa_proplist *p)
Free the property list.
int pa_proplist_isempty(pa_proplist *p)
Returns 0 when the proplist is empty, positive otherwise.
Replace the entire property list with the new one.
Definition: proplist.h:326
int pa_proplist_sets(pa_proplist *p, const char *key, const char *value)
Append a new string entry to the property list, possibly overwriting an already existing entry with t...
#define PA_GCC_PRINTF_ATTR(a, b)
If we're in GNU C, use some magic for detecting invalid format strings.
Definition: gccmacro.h:39
int pa_proplist_key_valid(const char *key)
Returns a non-zero value if the key is valid.
pa_proplist * pa_proplist_new(void)
Allocate a property list.
int pa_proplist_contains(pa_proplist *p, const char *key)
Returns 1 if an entry for the specified key exists in the property list.
int pa_proplist_unset_many(pa_proplist *p, const char *const keys[])
Similar to pa_proplist_unset() but takes an array of keys to remove.
int pa_proplist_get(pa_proplist *p, const char *key, const void **data, size_t *nbytes)
Store the value for the specified key in data.
int pa_proplist_equal(pa_proplist *a, pa_proplist *b)
Return non-zero when a and b have the same keys and values.
pa_proplist * pa_proplist_from_string(const char *str)
Allocate a new property list and assign key/value from a human readable string.
enum pa_update_mode pa_update_mode_t
Update mode enum for pa_proplist_update().
Merge new property list into the existing one, replacing all old entries that share a common key with...
Definition: proplist.h:335
pa_proplist * pa_proplist_copy(const pa_proplist *p)
Allocate a new property list and copy over every single entry from the specified list.
Merge new property list into the existing one, not replacing any old entries if they share a common k...
Definition: proplist.h:330
char * pa_proplist_to_string(pa_proplist *p)
Format the property list nicely as a human readable string.
char * pa_proplist_to_string_sep(pa_proplist *p, const char *sep)
Format the property list nicely as a human readable string and choose the separator.
const char * pa_proplist_iterate(pa_proplist *p, void **state)
Iterate through the property list.
int pa_proplist_setf(pa_proplist *p, const char *key, const char *format,...) PA_GCC_PRINTF_ATTR(3
Append a new string entry to the property list, possibly overwriting an already existing entry with t...
int pa_proplist_unset(pa_proplist *p, const char *key)
Removes a single entry from the property list, identified be the specified key name.
int pa_proplist_setp(pa_proplist *p, const char *pair)
Append a new string entry to the property list, possibly overwriting an already existing entry with t...
struct pa_proplist pa_proplist
A property list object.
Definition: proplist.h:274
unsigned pa_proplist_size(pa_proplist *p)
Return the number of entries in the property list.
void pa_proplist_update(pa_proplist *p, pa_update_mode_t mode, const pa_proplist *other)
Merge property list "other" into "p", adhering the merge mode as specified in "mode".
pa_update_mode
Update mode enum for pa_proplist_update().
Definition: proplist.h:325
const char * pa_proplist_gets(pa_proplist *p, const char *key)
Return a string entry for the specified key.