1902
1901
GvcMixerUIDevice* uidevice = GVC_MIXER_UI_DEVICE (object);
1903
1902
gvc_mixer_ui_device_set_profiles (uidevice, port->profiles);
1906
if (is_card_port_an_output (port)) {
1907
g_hash_table_insert (control->priv->ui_outputs,
1908
GUINT_TO_POINTER (gvc_mixer_ui_device_get_id (uidevice)),
1909
g_object_ref (uidevice));
1912
g_signal_emit (G_OBJECT (control),
1913
signals[OUTPUT_ADDED],
1915
gvc_mixer_ui_device_get_id (uidevice));
1920
g_hash_table_insert (control->priv->ui_inputs,
1921
GUINT_TO_POINTER (gvc_mixer_ui_device_get_id (uidevice)),
1922
g_object_ref (uidevice));
1925
g_signal_emit (G_OBJECT (control),
1926
signals[INPUT_ADDED],
1928
gvc_mixer_ui_device_get_id (uidevice));
1932
g_debug ("\n create_ui_device_from_port, direction %u \n description %s \n origin %s \n port available %i \n \n",
1935
gvc_mixer_card_get_name (card),
1904
g_hash_table_insert ( is_card_port_an_output (port) ? control->priv->ui_outputs : control->priv->ui_inputs,
1905
GUINT_TO_POINTER (gvc_mixer_ui_device_get_id (uidevice)),
1906
g_object_ref (uidevice));
1909
g_signal_emit (G_OBJECT (control),
1910
is_card_port_an_output (port) ? signals[OUTPUT_ADDED] : signals[INPUT_ADDED],
1912
gvc_mixer_ui_device_get_id (uidevice));
1917
This method could be optimised. Alot of duplication, line length could be significantly reduced.
1940
1920
match_card_port_with_existing_device (GvcMixerControl *control,
1941
1921
GvcMixerCardPort* card_port,
1948
1928
gboolean in_possession = FALSE;
1949
1929
gboolean is_output = is_card_port_an_output (card_port);
1952
devices = g_hash_table_get_values (control->priv->ui_outputs);
1955
devices = g_hash_table_get_values (control->priv->ui_inputs);
1931
devices = g_hash_table_get_values (is_output ? control->priv->ui_outputs : control->priv->ui_inputs);
1958
1933
for (d = devices; d != NULL; d = d->next) {
1959
1934
device = d->data;
1974
1949
g_object_set ( G_OBJECT (device),
1975
1950
"port-available", available, NULL);
1976
1951
if (is_output) {
1978
g_signal_emit (G_OBJECT (control),
1979
signals[OUTPUT_ADDED],
1981
gvc_mixer_ui_device_get_id (device));
1984
g_signal_emit (G_OBJECT (control),
1985
signals[OUTPUT_REMOVED],
1987
gvc_mixer_ui_device_get_id (device));
1952
g_signal_emit (G_OBJECT (control),
1953
available ? signals[OUTPUT_ADDED] : signals[OUTPUT_REMOVED],
1955
gvc_mixer_ui_device_get_id (device));
1992
g_signal_emit (G_OBJECT (control),
1993
signals[INPUT_ADDED],
1995
gvc_mixer_ui_device_get_id (device));
1998
g_signal_emit (G_OBJECT (control),
1999
signals[INPUT_REMOVED],
2001
gvc_mixer_ui_device_get_id (device));
1958
g_signal_emit (G_OBJECT (control),
1959
available ? signals[INPUT_ADDED] : signals[INPUT_REMOVED],
1961
gvc_mixer_ui_device_get_id (device));
2005
1964
g_free (device_port_name);