sequencer
Public Types | Public Member Functions | Static Public Attributes | List of all members
sequencer::backend::synth::backend_t< ClockReceiver > Class Template Reference

#include <synth.hpp>

Inheritance diagram for sequencer::backend::synth::backend_t< ClockReceiver >:
Inheritance graph
[legend]
Collaboration diagram for sequencer::backend::synth::backend_t< ClockReceiver >:
Collaboration graph
[legend]

Public Types

using size_type = std::vector< chain_t >::size_type
 

Public Member Functions

template<class Callback >
 backend_t (Callback callback)
 
 ~backend_t ()
 
chain_tchain (size_type idx) noexcept
 
const chain_tchain (size_type idx) const noexcept
 
void start () noexcept
 
void stop () noexcept
 
void trigger () noexcept
 
void set_device (int device_id)
 
std::vector< std::string > available_audio_devices () const
 
template<int N>
void receive_message (double dt, const midi::message_t< N > &message)
 
template<class F >
void set_bpm_functor (F f)
 
std::vector< std::string > available_reverb_banks ()
 
void set_reverb_bank_id (int id)
 
std::vector< std::string > available_reverbs ()
 
void set_reverb_type_id (int id)
 
void set_dry_wet_ratio (double ratio) noexcept
 

Static Public Attributes

static constexpr auto number_of_oscillators = 2u
 
static constexpr auto sub_sample_size = chain_t::sub_sample_size
 
static constexpr auto M = chain_t::M
 

Member Typedef Documentation

◆ size_type

template<class ClockReceiver >
using sequencer::backend::synth::backend_t< ClockReceiver >::size_type = std::vector< chain_t >::size_type

Constructor & Destructor Documentation

◆ backend_t()

template<class ClockReceiver >
template<class Callback >
sequencer::backend::synth::backend_t< ClockReceiver >::backend_t ( Callback  callback)
inlineexplicit

◆ ~backend_t()

template<class ClockReceiver >
sequencer::backend::synth::backend_t< ClockReceiver >::~backend_t ( )
inline

Member Function Documentation

◆ available_audio_devices()

template<class ClockReceiver >
std::vector< std::string > sequencer::backend::synth::backend_t< ClockReceiver >::available_audio_devices ( ) const
inline

◆ available_reverb_banks()

template<class ClockReceiver >
std::vector< std::string > sequencer::backend::synth::backend_t< ClockReceiver >::available_reverb_banks ( )
inline

◆ available_reverbs()

template<class ClockReceiver >
std::vector< std::string > sequencer::backend::synth::backend_t< ClockReceiver >::available_reverbs ( )
inline

◆ chain() [1/2]

template<class ClockReceiver >
chain_t& sequencer::backend::synth::backend_t< ClockReceiver >::chain ( size_type  idx)
inlinenoexcept

◆ chain() [2/2]

template<class ClockReceiver >
const chain_t& sequencer::backend::synth::backend_t< ClockReceiver >::chain ( size_type  idx) const
inlinenoexcept

◆ receive_message()

template<class ClockReceiver >
template<int N>
void sequencer::backend::synth::backend_t< ClockReceiver >::receive_message ( double  dt,
const midi::message_t< N > &  message 
)
inline

◆ set_bpm_functor()

template<class ClockReceiver >
template<class F >
void sequencer::backend::synth::backend_t< ClockReceiver >::set_bpm_functor ( f)
inline

◆ set_device()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::set_device ( int  device_id)
inline

◆ set_dry_wet_ratio()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::set_dry_wet_ratio ( double  ratio)
inlinenoexcept

◆ set_reverb_bank_id()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::set_reverb_bank_id ( int  id)
inline

◆ set_reverb_type_id()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::set_reverb_type_id ( int  id)
inline

◆ start()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::start ( )
inlinenoexcept

◆ stop()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::stop ( )
inlinenoexcept

◆ trigger()

template<class ClockReceiver >
void sequencer::backend::synth::backend_t< ClockReceiver >::trigger ( )
inlinenoexcept

Member Data Documentation

◆ M

template<class ClockReceiver >
constexpr auto sequencer::backend::synth::backend_t< ClockReceiver >::M = chain_t::M
static

◆ number_of_oscillators

template<class ClockReceiver >
constexpr auto sequencer::backend::synth::backend_t< ClockReceiver >::number_of_oscillators = 2u
static

◆ sub_sample_size

template<class ClockReceiver >
constexpr auto sequencer::backend::synth::backend_t< ClockReceiver >::sub_sample_size = chain_t::sub_sample_size
static

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