mirror of
https://github.com/alsa-project/alsa-tools.git
synced 2025-10-29 05:40:25 -04:00
hdspmixer: Lower nesting depth in label assignment
This fix is mostly cosmetic, the long if-then-else-if-chain was rather confusing. To improve code readability, use simple if-then statements and leave the function as soon as a match is found. Clear code would probably use a two-dimensional map, but it seems rather overengineered. Last but not least, the non-matching case was augmented by assigning a generic "1", "2", "3" .. channel naming schema to prevent hdspmixer from crashing. Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
042363a429
commit
05d6bc9728
1 changed files with 85 additions and 64 deletions
|
|
@ -198,71 +198,92 @@ void HDSPMixerOutput::setLabels()
|
||||||
int sm = basew->cards[basew->current_card]->speed_mode;
|
int sm = basew->cards[basew->current_card]->speed_mode;
|
||||||
|
|
||||||
if (type == H9632) {
|
if (type == H9632) {
|
||||||
switch (sm) {
|
switch (sm) {
|
||||||
case 0:
|
case 0:
|
||||||
labels_input = labels_playback = labels_9632_ss;
|
labels_input = labels_playback = labels_9632_ss;
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
labels_input = labels_playback = labels_9632_ds;
|
labels_input = labels_playback = labels_9632_ds;
|
||||||
break;
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
labels_input = labels_playback = labels_9632_qs;
|
labels_input = labels_playback = labels_9632_qs;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
} else if (type == Multiface) {
|
return;
|
||||||
if (sm)
|
|
||||||
labels_input = labels_playback = labels_mf_ds;
|
|
||||||
else
|
|
||||||
labels_input = labels_playback = labels_mf_ss;
|
|
||||||
} else if (type == Digiface) {
|
|
||||||
if (sm)
|
|
||||||
labels_input = labels_playback = labels_df_ds;
|
|
||||||
else
|
|
||||||
labels_input = labels_playback = labels_df_ss;
|
|
||||||
} else if (HDSPeMADI == type) {
|
|
||||||
switch (sm) {
|
|
||||||
case 0:
|
|
||||||
labels_input = labels_playback = labels_madi_ss;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
labels_input = labels_playback = labels_madi_ds;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
labels_input = labels_playback = labels_madi_qs;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} else if (HDSP_AES == type) {
|
|
||||||
labels_input = labels_playback = labels_aes32;
|
|
||||||
} else if (HDSPeAIO == type) {
|
|
||||||
switch (sm) {
|
|
||||||
case 0:
|
|
||||||
labels_input = labels_aio_ss_input;
|
|
||||||
labels_playback = labels_aio_ss_playback;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
labels_input = labels_aio_ds_input;
|
|
||||||
labels_playback = labels_aio_ds_playback;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
labels_input = labels_aio_qs_input;
|
|
||||||
labels_playback = labels_aio_ds_playback;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} else if (HDSPeRayDAT == type) {
|
|
||||||
switch (sm) {
|
|
||||||
case 0:
|
|
||||||
labels_input = labels_playback = labels_raydat_ss;
|
|
||||||
break;
|
|
||||||
case 1:
|
|
||||||
labels_input = labels_playback = labels_raydat_ds;
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
labels_input = labels_playback = labels_raydat_qs;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
fprintf(stderr, "Unknown card type for output labels\n");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (type == Multiface) {
|
||||||
|
if (sm)
|
||||||
|
labels_input = labels_playback = labels_mf_ds;
|
||||||
|
else
|
||||||
|
labels_input = labels_playback = labels_mf_ss;
|
||||||
|
return;
|
||||||
|
};
|
||||||
|
|
||||||
|
if (type == Digiface) {
|
||||||
|
if (sm)
|
||||||
|
labels_input = labels_playback = labels_df_ds;
|
||||||
|
else
|
||||||
|
labels_input = labels_playback = labels_df_ss;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (HDSPeMADI == type) {
|
||||||
|
switch (sm) {
|
||||||
|
case 0:
|
||||||
|
labels_input = labels_playback = labels_madi_ss;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
labels_input = labels_playback = labels_madi_ds;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
labels_input = labels_playback = labels_madi_qs;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HDSP_AES == type) {
|
||||||
|
labels_input = labels_playback = labels_aes32;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HDSPeAIO == type) {
|
||||||
|
switch (sm) {
|
||||||
|
case 0:
|
||||||
|
labels_input = labels_aio_ss_input;
|
||||||
|
labels_playback = labels_aio_ss_playback;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
labels_input = labels_aio_ds_input;
|
||||||
|
labels_playback = labels_aio_ds_playback;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
labels_input = labels_aio_qs_input;
|
||||||
|
labels_playback = labels_aio_ds_playback;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (HDSPeRayDAT == type) {
|
||||||
|
switch (sm) {
|
||||||
|
case 0:
|
||||||
|
labels_input = labels_playback = labels_raydat_ss;
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
labels_input = labels_playback = labels_raydat_ds;
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
labels_input = labels_playback = labels_raydat_qs;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
fprintf(stderr, "Unknown card type for output labels, assigning defaults\n");
|
||||||
|
labels_input = labels_playback = labels_madi_ss;
|
||||||
}
|
}
|
||||||
|
|
||||||
void HDSPMixerOutput::draw_background()
|
void HDSPMixerOutput::draw_background()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue