Euphoria
eu::minsynth Namespace Reference

Namespaces

 base_frequencies
 

Classes

struct  ToneToFrequencyConverter
 
struct  Node
 
struct  ToneTaker
 
struct  ToneSender
 
struct  FrequencyTaker
 
struct  WaveOut
 
struct  ToneToFrequencyConverterNode
 
struct  PianoKey
 
struct  MidiInNode
 
struct  KeyboardInputNode
 
struct  SingleToneNode
 
struct  ArpegiatorNode
 
struct  LiveFrequency
 
struct  DeadFrequency
 
struct  Envelope
 
struct  OscilatorNode
 Node represents a single Oscilator. Frequency -> WaveOutput. More...
 
struct  Effect
 
struct  VolumeNode
 
struct  ScalerEffect
 

Typedefs

using KeyboardLayout = std::vector< std::vector< core::Key > >
 

Enumerations

enum class  Tuning {
  a4 , boston , new_york , europe ,
  french , baroque , chorton , classical ,
  max_value
}
 
enum class  ChordEmulation {
  none , major , minor , diminished ,
  augmented , major7 , dominant7 , augmented7 ,
  augmented_major7 , minor_major7 , max_value
}
 
enum class  MidiEvent {
  note_off = 0b000 , note_on = 0b001 , aftertouch = 0b010 , control_change = 0b011 ,
  program_change = 0b100 , channel_pressure = 0b101 , pitch_bend = 0b110
}
 
enum class  ArpMode {
  up , down , up_down_inclusive , up_down_exclusive ,
  random , random_no_repeat , max_value
}
 
enum class  OscilatorType {
  sine , square , triangle , sawtooth ,
  noise , max_value
}
 

Functions

std::string to_string (Tuning t)
 
std::string to_string (ChordEmulation em)
 
float from_tuning_to_base_frequency (Tuning t)
 
std::string from_midi_event_to_string (MidiEvent e)
 
std::string to_string (ArpMode mode)
 
std::string to_string (OscilatorType osc)
 
template<int tones_per_octave>
float from_tone_to_frequency_impl (int tone, float base_frequency)
 
float from_tone_to_frequency (int tone, float base_frequency)
 
float run_oscilator (float frequency, float time, OscilatorType osc)
 
float to01 (float lower_bound, float value, float upper_bound)
 
std::vector< PianoKeybuild_one_cctave_of_piano_keys (int octave, int semitone_offset, core::Key c, core::Key d, core::Key e, core::Key f, core::Key g, core::Key a, core::Key b, core::Key c_sharp, core::Key d_sharp, core::Key f_sharp, core::Key g_sharp, core::Key a_sharp)
 
const KeyboardLayoutcreate_qwerty_keyboard_layout ()
 
void setup_one_octave_layout (std::vector< PianoKey > *keys, int base_octave, int octave, const KeyboardLayout &k, int start_row, int start_col)
 
void setup_qwerty_two_octave_layout (std::vector< PianoKey > *keys, int base_octave, int octave_offset)
 

Typedef Documentation

◆ KeyboardLayout

using eu::minsynth::KeyboardLayout = typedef std::vector<std::vector<core::Key> >

Definition at line 345 of file synth.h.

Enumeration Type Documentation

◆ ArpMode

enum eu::minsynth::ArpMode
strong
Enumerator
up 
down 
up_down_inclusive 
up_down_exclusive 
random 
random_no_repeat 
max_value 

Definition at line 54 of file synth.h.

◆ ChordEmulation

Enumerator
none 
major 
minor 
diminished 
augmented 
major7 
dominant7 
augmented7 
augmented_major7 
minor_major7 
max_value 

Definition at line 26 of file synth.h.

◆ MidiEvent

Enumerator
note_off 
note_on 
aftertouch 
control_change 
program_change 
channel_pressure 
pitch_bend 

Definition at line 42 of file synth.h.

◆ OscilatorType

Enumerator
sine 
square 
triangle 
sawtooth 
noise 
max_value 

Definition at line 66 of file synth.h.

◆ Tuning

enum eu::minsynth::Tuning
strong
Enumerator
a4 
boston 
new_york 
europe 
french 
baroque 
chorton 
classical 
max_value 

Definition at line 12 of file synth.h.

Function Documentation

◆ build_one_cctave_of_piano_keys()

std::vector<PianoKey> eu::minsynth::build_one_cctave_of_piano_keys ( int  octave,
int  semitone_offset,
core::Key  c,
core::Key  d,
core::Key  e,
core::Key  f,
core::Key  g,
core::Key  a,
core::Key  b,
core::Key  c_sharp,
core::Key  d_sharp,
core::Key  f_sharp,
core::Key  g_sharp,
core::Key  a_sharp 
)

Definition at line 822 of file synth.cc.

◆ create_qwerty_keyboard_layout()

const KeyboardLayout & eu::minsynth::create_qwerty_keyboard_layout ( )

Definition at line 860 of file synth.cc.

◆ from_midi_event_to_string()

std::string eu::minsynth::from_midi_event_to_string ( MidiEvent  e)

Definition at line 84 of file synth.cc.

◆ from_tone_to_frequency()

float eu::minsynth::from_tone_to_frequency ( int  tone,
float  base_frequency 
)

Definition at line 183 of file synth.cc.

◆ from_tone_to_frequency_impl()

template<int tones_per_octave>
float eu::minsynth::from_tone_to_frequency_impl ( int  tone,
float  base_frequency 
)

Definition at line 176 of file synth.cc.

◆ from_tuning_to_base_frequency()

float eu::minsynth::from_tuning_to_base_frequency ( Tuning  t)

Definition at line 66 of file synth.cc.

◆ run_oscilator()

float eu::minsynth::run_oscilator ( float  frequency,
float  time,
OscilatorType  osc 
)

Definition at line 622 of file synth.cc.

◆ setup_one_octave_layout()

void eu::minsynth::setup_one_octave_layout ( std::vector< PianoKey > *  keys,
int  base_octave,
int  octave,
const KeyboardLayout k,
int  start_row,
int  start_col 
)

Definition at line 877 of file synth.cc.

◆ setup_qwerty_two_octave_layout()

void eu::minsynth::setup_qwerty_two_octave_layout ( std::vector< PianoKey > *  keys,
int  base_octave,
int  octave_offset 
)

Definition at line 926 of file synth.cc.

◆ to01()

float eu::minsynth::to01 ( float  lower_bound,
float  value,
float  upper_bound 
)

Definition at line 642 of file synth.cc.

◆ to_string() [1/4]

std::string eu::minsynth::to_string ( ArpMode  mode)

Definition at line 101 of file synth.cc.

◆ to_string() [2/4]

std::string eu::minsynth::to_string ( ChordEmulation  em)

Definition at line 47 of file synth.cc.

◆ to_string() [3/4]

std::string eu::minsynth::to_string ( OscilatorType  osc)

Definition at line 117 of file synth.cc.

◆ to_string() [4/4]

std::string eu::minsynth::to_string ( Tuning  t)

Definition at line 30 of file synth.cc.