21namespace deluge::dsp {
22void renderWave(
const int16_t* __restrict__ table, int32_t tableSizeMagnitude, int32_t amplitude,
23 int32_t* __restrict__ outputBuffer, int32_t* bufferEnd, uint32_t phaseIncrement, uint32_t phase,
24 bool applyAmplitude, uint32_t phaseToAdd, int32_t amplitudeIncrement);
25void renderPulseWave(
const int16_t* __restrict__ table, int32_t tableSizeMagnitude, int32_t amplitude,
26 int32_t* __restrict__ outputBuffer, int32_t* bufferEnd, uint32_t phaseIncrement, uint32_t phase,
27 bool applyAmplitude, uint32_t phaseToAdd, int32_t amplitudeIncrement);
28uint32_t renderCrudeSawWaveWithAmplitude(int32_t* thisSample, int32_t* bufferEnd, uint32_t phaseNowNow,
29 uint32_t phaseIncrementNow, int32_t amplitudeNow, int32_t amplitudeIncrement,
31uint32_t renderCrudeSawWaveWithoutAmplitude(int32_t* thisSample, int32_t* bufferEnd, uint32_t phaseNowNow,
32 uint32_t phaseIncrementNow, int32_t numSamples);
38std::pair<int32_t, int32_t> getTableNumber(uint32_t phaseIncrement);
39extern const int16_t* sawTables[20];
40extern const int16_t* squareTables[20];
41extern const int16_t* analogSquareTables[20];
42extern const int16_t* analogSawTables[20];