8 namespace swift::sound::sample_provider
13 this->setObjectName(
"CSawToothGenerator");
19 samples.fill(0,
static_cast<int>(count));
21 for (
int sampleCount = 0; sampleCount < count; sampleCount++)
23 double multiple = 2 * m_frequency / m_sampleRate;
24 double sampleSaw = std::fmod((m_nSample * multiple), 2) - 1;
25 double sampleValue = m_gain * sampleSaw;
26 samples[sampleCount] =
static_cast<float>(sampleValue);
29 return static_cast<int>(count);
CSawToothGenerator(double frequency, QObject *parent=nullptr)
Ctor.
virtual int readSamples(QVector< float > &samples, qint64 count)
Read samples.
Sample provider interface.