neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::i_audio_oscillator Class Referenceabstract

#include <i_audio_oscillator.hpp>

Inheritance diagram for neogfx::i_audio_oscillator:
neolib::i_reference_counted

Public Types

typedef i_audio_oscillator abstract_type
 

Public Member Functions

virtual ~i_audio_oscillator ()=default
 
virtual audio_sample_rate sample_rate () const =0
 
virtual void set_sample_rate (audio_sample_rate aSampleRate)=0
 
virtual float frequency () const =0
 
virtual void set_frequency (float aFrequency)=0
 
virtual float amplitude () const =0
 
virtual void set_amplitude (float aAmplitude)=0
 
virtual oscillator_function function () const =0
 
virtual void set_function (oscillator_function aFunction)=0
 
virtual void set_function (std::function< float(float)> const &aFunction)=0
 Note: not plugin-safe.
 
virtual void generate (audio_sample_count aSampleCount, float *aOutputSamples)=0
 
virtual void generate_from (audio_sample_index aSampleFrom, audio_sample_count aSampleCount, float *aOutputSamples)=0
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Detailed Description

Definition at line 36 of file i_audio_oscillator.hpp.

Member Typedef Documentation

◆ abstract_type

Constructor & Destructor Documentation

◆ ~i_audio_oscillator()

virtual neogfx::i_audio_oscillator::~i_audio_oscillator ( )
virtualdefault

Member Function Documentation

◆ amplitude()

virtual float neogfx::i_audio_oscillator::amplitude ( ) const
pure virtual

◆ frequency()

virtual float neogfx::i_audio_oscillator::frequency ( ) const
pure virtual

◆ function()

virtual oscillator_function neogfx::i_audio_oscillator::function ( ) const
pure virtual

◆ generate()

virtual void neogfx::i_audio_oscillator::generate ( audio_sample_count  aSampleCount,
float *  aOutputSamples 
)
pure virtual

◆ generate_from()

virtual void neogfx::i_audio_oscillator::generate_from ( audio_sample_index  aSampleFrom,
audio_sample_count  aSampleCount,
float *  aOutputSamples 
)
pure virtual

◆ sample_rate()

virtual audio_sample_rate neogfx::i_audio_oscillator::sample_rate ( ) const
pure virtual

◆ set_amplitude()

virtual void neogfx::i_audio_oscillator::set_amplitude ( float  aAmplitude)
pure virtual

◆ set_frequency()

virtual void neogfx::i_audio_oscillator::set_frequency ( float  aFrequency)
pure virtual

◆ set_function() [1/2]

virtual void neogfx::i_audio_oscillator::set_function ( oscillator_function  aFunction)
pure virtual

◆ set_function() [2/2]

virtual void neogfx::i_audio_oscillator::set_function ( std::function< float(float)> const &  aFunction)
pure virtual

Note: not plugin-safe.

◆ set_sample_rate()

virtual void neogfx::i_audio_oscillator::set_sample_rate ( audio_sample_rate  aSampleRate)
pure virtual

The documentation for this class was generated from the following file: