1 #ifndef foopulseproplisthfoo 2 #define foopulseproplisthfoo 23 #include <sys/types.h> 25 #include <pulse/cdecl.h> 35 #define PA_PROP_MEDIA_NAME "media.name" 38 #define PA_PROP_MEDIA_TITLE "media.title" 41 #define PA_PROP_MEDIA_ARTIST "media.artist" 44 #define PA_PROP_MEDIA_COPYRIGHT "media.copyright" 47 #define PA_PROP_MEDIA_SOFTWARE "media.software" 50 #define PA_PROP_MEDIA_LANGUAGE "media.language" 53 #define PA_PROP_MEDIA_FILENAME "media.filename" 57 #define PA_PROP_MEDIA_ICON "media.icon" 61 #define PA_PROP_MEDIA_ICON_NAME "media.icon_name" 64 #define PA_PROP_MEDIA_ROLE "media.role" 67 #define PA_PROP_FILTER_WANT "filter.want" 70 #define PA_PROP_FILTER_APPLY "filter.apply" 73 #define PA_PROP_FILTER_SUPPRESS "filter.suppress" 76 #define PA_PROP_EVENT_ID "event.id" 79 #define PA_PROP_EVENT_DESCRIPTION "event.description" 82 #define PA_PROP_EVENT_MOUSE_X "event.mouse.x" 85 #define PA_PROP_EVENT_MOUSE_Y "event.mouse.y" 88 #define PA_PROP_EVENT_MOUSE_HPOS "event.mouse.hpos" 91 #define PA_PROP_EVENT_MOUSE_VPOS "event.mouse.vpos" 94 #define PA_PROP_EVENT_MOUSE_BUTTON "event.mouse.button" 97 #define PA_PROP_WINDOW_NAME "window.name" 100 #define PA_PROP_WINDOW_ID "window.id" 104 #define PA_PROP_WINDOW_ICON "window.icon" 108 #define PA_PROP_WINDOW_ICON_NAME "window.icon_name" 111 #define PA_PROP_WINDOW_X "window.x" 114 #define PA_PROP_WINDOW_Y "window.y" 117 #define PA_PROP_WINDOW_WIDTH "window.width" 120 #define PA_PROP_WINDOW_HEIGHT "window.height" 123 #define PA_PROP_WINDOW_HPOS "window.hpos" 126 #define PA_PROP_WINDOW_VPOS "window.vpos" 129 #define PA_PROP_WINDOW_DESKTOP "window.desktop" 132 #define PA_PROP_WINDOW_X11_DISPLAY "window.x11.display" 135 #define PA_PROP_WINDOW_X11_SCREEN "window.x11.screen" 138 #define PA_PROP_WINDOW_X11_MONITOR "window.x11.monitor" 141 #define PA_PROP_WINDOW_X11_XID "window.x11.xid" 144 #define PA_PROP_APPLICATION_NAME "application.name" 147 #define PA_PROP_APPLICATION_ID "application.id" 150 #define PA_PROP_APPLICATION_VERSION "application.version" 154 #define PA_PROP_APPLICATION_ICON "application.icon" 158 #define PA_PROP_APPLICATION_ICON_NAME "application.icon_name" 161 #define PA_PROP_APPLICATION_LANGUAGE "application.language" 164 #define PA_PROP_APPLICATION_PROCESS_ID "application.process.id" 167 #define PA_PROP_APPLICATION_PROCESS_BINARY "application.process.binary" 170 #define PA_PROP_APPLICATION_PROCESS_USER "application.process.user" 173 #define PA_PROP_APPLICATION_PROCESS_HOST "application.process.host" 176 #define PA_PROP_APPLICATION_PROCESS_MACHINE_ID "application.process.machine_id" 179 #define PA_PROP_APPLICATION_PROCESS_SESSION_ID "application.process.session_id" 182 #define PA_PROP_DEVICE_STRING "device.string" 185 #define PA_PROP_DEVICE_API "device.api" 188 #define PA_PROP_DEVICE_DESCRIPTION "device.description" 191 #define PA_PROP_DEVICE_BUS_PATH "device.bus_path" 194 #define PA_PROP_DEVICE_SERIAL "device.serial" 197 #define PA_PROP_DEVICE_VENDOR_ID "device.vendor.id" 200 #define PA_PROP_DEVICE_VENDOR_NAME "device.vendor.name" 203 #define PA_PROP_DEVICE_PRODUCT_ID "device.product.id" 206 #define PA_PROP_DEVICE_PRODUCT_NAME "device.product.name" 209 #define PA_PROP_DEVICE_CLASS "device.class" 212 #define PA_PROP_DEVICE_FORM_FACTOR "device.form_factor" 215 #define PA_PROP_DEVICE_BUS "device.bus" 219 #define PA_PROP_DEVICE_ICON "device.icon" 223 #define PA_PROP_DEVICE_ICON_NAME "device.icon_name" 226 #define PA_PROP_DEVICE_ACCESS_MODE "device.access_mode" 229 #define PA_PROP_DEVICE_MASTER_DEVICE "device.master_device" 232 #define PA_PROP_DEVICE_BUFFERING_BUFFER_SIZE "device.buffering.buffer_size" 235 #define PA_PROP_DEVICE_BUFFERING_FRAGMENT_SIZE "device.buffering.fragment_size" 238 #define PA_PROP_DEVICE_PROFILE_NAME "device.profile.name" 241 #define PA_PROP_DEVICE_INTENDED_ROLES "device.intended_roles" 244 #define PA_PROP_DEVICE_PROFILE_DESCRIPTION "device.profile.description" 247 #define PA_PROP_MODULE_AUTHOR "module.author" 250 #define PA_PROP_MODULE_DESCRIPTION "module.description" 253 #define PA_PROP_MODULE_USAGE "module.usage" 256 #define PA_PROP_MODULE_VERSION "module.version" 259 #define PA_PROP_FORMAT_SAMPLE_FORMAT "format.sample_format" 262 #define PA_PROP_FORMAT_RATE "format.rate" 265 #define PA_PROP_FORMAT_CHANNELS "format.channels" 268 #define PA_PROP_FORMAT_CHANNEL_MAP "format.channel_map" 340 #define PA_UPDATE_SET PA_UPDATE_SET 341 #define PA_UPDATE_MERGE PA_UPDATE_MERGE 342 #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:324
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:37
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:333
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:328
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:272
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:323
const char * pa_proplist_gets(pa_proplist *p, const char *key)
Return a string entry for the specified key.