mirror of
https://github.com/jhbruhn/eurorack.git
synced 2025-03-15 11:05:49 +00:00
Fix values from pots being always passed on to the processor
This commit is contained in:
parent
f741f25f93
commit
8557960572
3 changed files with 8 additions and 6 deletions
stereo_mix
|
@ -55,7 +55,7 @@ class PotController {
|
|||
PotController() { }
|
||||
~PotController() { }
|
||||
|
||||
inline void Init(
|
||||
void Init(
|
||||
uint16_t* main_parameter,
|
||||
uint16_t* hidden_parameters[hidden_parameter_count]) // this pot controller always works on values between 0 and 65535
|
||||
{
|
||||
|
|
|
@ -48,10 +48,9 @@ void UI::Poll()
|
|||
}
|
||||
|
||||
for (size_t i = 0; i < kNumChannels * 2; i++) {
|
||||
if (i >= kNumChannels) {
|
||||
processors[i - kNumChannels].set_pan_offset(adc->value(ADC_GROUP_POT + i) - 32767L);
|
||||
} else {
|
||||
processors[i].set_volume_offset(adc->value(ADC_GROUP_POT + i));
|
||||
if (i < kNumChannels) {
|
||||
processors[i].set_pan_offset(pan_pots[i] - 32767);
|
||||
processors[i].set_volume_offset(volume_pots[i]);
|
||||
}
|
||||
if (abs(previous_pot_values[i] - adc->value(ADC_GROUP_POT + i)) > 1900) {
|
||||
previous_pot_values[i] = adc->value(ADC_GROUP_POT + i);
|
||||
|
|
|
@ -21,6 +21,8 @@ class UI {
|
|||
{
|
||||
queue.Init();
|
||||
|
||||
};
|
||||
void Init() {
|
||||
for (size_t i = 0; i < kNumChannels; i++) {
|
||||
uint16_t* volume_hidden_params[kNumChannels] = {&volume_att_pots[i], &volume_att_pots[i], &volume_att_pots[i], &volume_att_pots[i]};
|
||||
potControllers[i].Init(&volume_pots[i], volume_hidden_params);
|
||||
|
@ -29,7 +31,8 @@ class UI {
|
|||
|
||||
volume_att_pots[i] = pan_att_pots[i] = 65535;
|
||||
}
|
||||
};
|
||||
|
||||
}
|
||||
void Poll();
|
||||
void DoEvents();
|
||||
|
||||
|
|
Loading…
Reference in a new issue