mirror of
https://github.com/AndroidAudioMods/ViPERFX_RE.git
synced 2025-06-08 10:39:29 +08:00
28 lines
654 B
C++
28 lines
654 B
C++
![]() |
//
|
||
|
// Created by mart on 7/26/21.
|
||
|
//
|
||
|
|
||
|
#include "TubeSimulator.h"
|
||
|
|
||
|
TubeSimulator::TubeSimulator() {
|
||
|
this->acc[0] = 0.f;
|
||
|
this->acc[1] = 0.f;
|
||
|
this->enabled = false;
|
||
|
}
|
||
|
|
||
|
void TubeSimulator::Reset() {
|
||
|
this->acc[0] = 0.f;
|
||
|
this->acc[1] = 0.f;
|
||
|
this->enabled = false;
|
||
|
}
|
||
|
|
||
|
void TubeSimulator::TubeProcess(float *buffer, uint32_t size) {
|
||
|
if (this->enabled && size > 0) {
|
||
|
for (int x = 0; x < size; x++) {
|
||
|
this->acc[0] = (this->acc[0] + buffer[2*x]) / 2.f;
|
||
|
this->acc[1] = (this->acc[1] + buffer[2*x+1]) / 2.f;
|
||
|
buffer[2*x] = this->acc[0];
|
||
|
buffer[2*x+1] = this->acc[1];
|
||
|
}
|
||
|
}
|
||
|
}
|