int pa_classify_source(struct userdata *u, struct pa_source *source, uint32_t flag_mask, uint32_t flag_value, char *buf, int len) { struct pa_classify *classify; struct pa_classify_device_def *defs; const char *name; pa_assert(u); pa_assert_se((classify = u->classify)); pa_assert(classify->sources); pa_assert_se((defs = classify->sources->defs)); name = pa_source_ext_get_name(source); return devices_classify(defs, source->proplist, name, flag_mask, flag_value, buf, len); }
int pa_classify_is_source_typeof(struct userdata *u, struct pa_source *source, const char *type, struct pa_classify_device_data **d) { struct pa_classify *classify; struct pa_classify_device_def *defs; const char *name; pa_assert(u); pa_assert_se((classify = u->classify)); pa_assert(classify->sources); pa_assert_se((defs = classify->sources->defs)); if (!source || !type) return FALSE; name = pa_source_ext_get_name(source); return devices_is_typeof(defs, source->proplist, name, type, d); }
static const char *object_name(struct pa_policy_object *object) { const char *name; switch (object->type) { case pa_policy_object_module: name = pa_module_ext_get_name((struct pa_module *)object->ptr); break; case pa_policy_object_card: name = pa_card_ext_get_name((struct pa_card *)object->ptr); break; case pa_policy_object_sink: name = pa_sink_ext_get_name((struct pa_sink *)object->ptr); break; case pa_policy_object_source: name = pa_source_ext_get_name((struct pa_source *)object->ptr); break; case pa_policy_object_sink_input: name = pa_sink_input_ext_get_name((struct pa_sink_input *)object->ptr); break; case pa_policy_object_source_output: name = pa_source_output_ext_get_name( (struct pa_source_output *)object->ptr); break; default: name = "<unknown>"; break; } return name; }