mirror of
https://github.com/alsa-project/alsa-tools.git
synced 2025-10-29 05:40:25 -04:00
hdspmixer: Add a 9th pseudo preset
When switching cards, all current settings are lost. To have a place where to store them, let's add a virtual 9th preset which can be used as a temporary scratch pad. Signed-off-by: Adrian Knoth <adi@drcomp.erfurt.thur.de> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
c975369874
commit
0b018d9a23
7 changed files with 13 additions and 7 deletions
|
|
@ -38,7 +38,7 @@ HDSPMixerIOMixer::HDSPMixerIOMixer(int x, int y, int w, int h, int ch, int type)
|
|||
p_iomixer_xpm = iomixer_r_xpm;
|
||||
}
|
||||
for (int j = 0; j < MAX_CARDS; ++j) {
|
||||
for (int i = 0; i < 8; ++i) {
|
||||
for (int i = 0; i < NUM_PRESETS; ++i) {
|
||||
data[j][0][i] = new HDSPMixerStripData();
|
||||
data[j][1][i] = new HDSPMixerStripData();
|
||||
data[j][2][i] = new HDSPMixerStripData();
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ private:
|
|||
std::stringstream channel_name;
|
||||
void update_child(Fl_Widget &widget);
|
||||
public:
|
||||
HDSPMixerStripData *data[MAX_CARDS][3][8]; /* data[card][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerStripData *data[MAX_CARDS][3][NUM_PRESETS]; /* data[card][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerPan *pan;
|
||||
HDSPMixerFader *fader;
|
||||
HDSPMixerPeak *peak;
|
||||
|
|
|
|||
|
|
@ -170,8 +170,8 @@ static char const *labels_9632_qs[8] = {
|
|||
HDSPMixerOutput::HDSPMixerOutput(int x, int y, int w, int h, int num):Fl_Group(x, y, w, h)
|
||||
{
|
||||
|
||||
for (int j = 0; j < 3; ++j) {
|
||||
for (int i = 0; i < 8; ++i) {
|
||||
for (int j = 0; j < MAX_CARDS; ++j) {
|
||||
for (int i = 0; i < NUM_PRESETS; ++i) {
|
||||
data[j][0][i] = new HDSPMixerOutputData();
|
||||
data[j][1][i] = new HDSPMixerOutputData();
|
||||
data[j][2][i] = new HDSPMixerOutputData();
|
||||
|
|
|
|||
|
|
@ -52,7 +52,7 @@ private:
|
|||
HDSPMixerWindow *basew;
|
||||
void update_child(Fl_Widget& widget);
|
||||
public:
|
||||
HDSPMixerOutputData *data[MAX_CARDS][3][8]; /* data[card][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerOutputData *data[MAX_CARDS][3][NUM_PRESETS]; /* data[card][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerFader *fader;
|
||||
HDSPMixerGain *gain;
|
||||
HDSPMixerMeter *meter;
|
||||
|
|
|
|||
|
|
@ -791,7 +791,7 @@ HDSPMixerWindow::HDSPMixerWindow(int x, int y, int w, int h, const char *label,
|
|||
}
|
||||
}
|
||||
for (int j = 0; j < MAX_CARDS; j++) {
|
||||
for (int i = 0; i < 8; ++i) {
|
||||
for (int i = 0; i < NUM_PRESETS; ++i) {
|
||||
data[j][0][i] = new HDSPMixerPresetData();
|
||||
data[j][1][i] = new HDSPMixerPresetData();
|
||||
data[j][2][i] = new HDSPMixerPresetData();
|
||||
|
|
|
|||
|
|
@ -73,7 +73,7 @@ public:
|
|||
Fl_Scroll *scroll;
|
||||
HDSPMixerSetup *setup;
|
||||
HDSPMixerAbout *about;
|
||||
HDSPMixerPresetData *data[MAX_CARDS][3][8]; /* data[card number][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerPresetData *data[MAX_CARDS][3][NUM_PRESETS]; /* data[card number][mode(ss/ds/qs)][preset number] */
|
||||
HDSPMixerCard *cards[MAX_CARDS];
|
||||
HDSPMixerInputs *inputs;
|
||||
HDSPMixerPlaybacks *playbacks;
|
||||
|
|
|
|||
|
|
@ -49,6 +49,12 @@
|
|||
|
||||
#define MAX_CARDS 3
|
||||
|
||||
/* Number of presets. 8 presets visible to the user, the 9th is used for
|
||||
* holding temporary mixer data when switching cards, so it's not a real
|
||||
* preset but more like a scratch pad.
|
||||
*/
|
||||
#define NUM_PRESETS 9
|
||||
|
||||
typedef unsigned long long int int64;
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue