Commit graph

26 commits

Author SHA1 Message Date
Mikel Astiz
3c9b42d2bc card: Support adding profiles dynamically
Some cards might need to add profiles during their lifetime, that is,
after the card has been created.
2012-10-25 12:58:29 +03:00
Tanu Kaskinen
12af302ac7 card: Ensure that there's always at least one profile.
In practice there is always at least one profile, and I
don't think there will ever be cards without profiles.
Therefore, I added assertions to pa_card_new() stating that
the card new data must always contain at least one profile.
Now a lot of code can be simplified, because it's guaranteed
that the profiles hashmap and the active_profile field are
always non-NULL.
2012-06-29 14:24:43 +03:00
Tanu Kaskinen
21c6c70438 card: Don't crash if someone gives NULL name to pa_card_set_profile().
In my opinion, pa_card_set_profile() should assert that name
is not NULL, and it would be the job of the client interface
to filter out NULLs from the client input, but this is done
this way also when setting sink and source ports, so for
consistency I'll do this this way for now.
2012-06-29 14:24:43 +03:00
Harsh Prateek Bora
13c7a55599 pulsecore: Use PA_IDXSET_FOREACH wherever applicable.
Signed-off-by: Harsh Prateek Bora <harsh.bora@linaro.org>
2012-05-31 14:12:36 +02:00
David Henningsson
0dced7f275 Cards now has ports directly, and device port has list of profiles
This forms the base for being able to expose all ports of all
profiles (even inactive ones) to clients.

Signed-off-by: David Henningsson <david.henningsson@canonical.com>
2011-11-26 16:46:42 +02:00
Colin Guthrie
3153b60a62 core: Add a new hook PA_CORE_HOOK_CARD_PROFILE_CHANGED
This will allow modules to know when a card profile has changed
and take appropriate action. This might prove useful when developing
UCM so that the appropriate verb can be set.
2011-02-25 11:28:01 +00:00
Lennart Poettering
4f44fe86fb card: make sure to always hand failure code back in some calls 2009-06-17 03:15:56 +02:00
Lennart Poettering
325c01bdbc card: some modernizations 2009-06-17 03:15:36 +02:00
Lennart Poettering
f13bbd576f prop: introduce new PA_PROP_DEVICE_INTENDED_ROLES property 2009-06-08 16:58:45 +02:00
Lennart Poettering
00797b8b6e core: add a suspend cause flags field 2009-06-05 19:05:07 +02:00
Lennart Poettering
3813034cef add missing initialization 2009-03-25 23:49:26 +01:00
Lennart Poettering
08154554b0 only store card profile if flagged for that 2009-03-23 19:31:36 +01:00
Colin Guthrie
86dee05aec Use LGPL 2.1 on all files previously using LGPL 2 2009-03-03 20:23:02 +00:00
Lennart Poettering
671b927955 add logic for initializing a useful icon name 2009-03-01 21:38:27 +01:00
Lennart Poettering
87e134277d don't claim that profile changes are always successful 2009-02-12 22:09:17 +01:00
Lennart Poettering
36362f624f add new function pa_card_suspend() 2009-01-22 00:17:11 +01:00
Lennart Poettering
0f7954a9f5 don't include full path in driver name. 2009-01-22 00:15:19 +01:00
Lennart Poettering
9661cd0444 make pa_card_new_data::active_profile a string 2009-01-21 02:46:36 +01:00
Lennart Poettering
cba4c6b9eb when changing profiles do the actual assignment in the generic implementation 2009-01-21 01:59:15 +01:00
Lennart Poettering
1d0bd6e5b7 remove bogus pa_core_check_idle() call 2009-01-21 01:55:26 +01:00
Lennart Poettering
7368a6e6be add priority logic to find best default profile 2009-01-20 20:35:18 +01:00
Lennart Poettering
7aa7a7b6ac fix destruction when no profiles are defined 2009-01-20 03:24:40 +01:00
Lennart Poettering
c06e43d7ff actually create pa_card object in module-alsa-card 2009-01-17 02:03:35 +01:00
Lennart Poettering
33c22b0102 rename card config to card profile 2009-01-15 23:44:46 +01:00
Lennart Poettering
344c934edb maintain a list of sink inputs/source outputs as part of the pa_client object 2009-01-15 18:38:20 +01:00
Lennart Poettering
b6deb0cc4c add new pa_card object as a way to logically combine multiple sinks and sources 2009-01-15 18:29:16 +01:00