Krotos Modules 3
Loading...
Searching...
No Matches
Oscillator.h
Go to the documentation of this file.
1#pragma once
2#include <mutex>
3
4namespace krotos
5{
7 {
8 public:
9 virtual ~Oscillator() = default;
10 virtual void setFrequency(float frequency) = 0;
14 virtual void setPhaseOffset(float phase) = 0;
17 virtual void reset() = 0;
18 virtual void setSampleRate(double sampleRate) = 0;
19 // virtual float getNextSample() = 0;
20 virtual StereoSample getNextStereoSample(size_t sampleIndex) = 0;
21 virtual float getFrequency() = 0;
22 virtual double getPhase() = 0;
23 virtual void setPhase(double phase01) = 0;
24 virtual double getSampleRate() = 0;
25 virtual int getNumActiveGrains()
26 {
27 return 1;
28 } // Return a default of 1 grain for any derived oscillators who don't override
29 };
30
31} // namespace krotos
Definition Oscillator.h:7
virtual int getNumActiveGrains()
Definition Oscillator.h:25
virtual void setSampleRate(double sampleRate)=0
virtual double getPhase()=0
virtual StereoSample getNextStereoSample(size_t sampleIndex)=0
virtual void setFrequency(float frequency)=0
virtual void setPhaseOffset(float phase)=0
virtual void setPhase(double phase01)=0
virtual double getSampleRate()=0
virtual float getFrequency()=0
virtual void reset()=0
virtual ~Oscillator()=default
Definition KrotosAudioBuffer.h:16
Definition AirAbsorptionFilter.cpp:2