|
sequencer
|
Namespaces | |
| byte | |
| channel | |
| manufacturer | |
| realtime | |
| system | |
| trig_condition | |
Classes | |
| class | clock |
| class | clock_base |
| class | clock_to_step_t |
| struct | device_entry_t |
| struct | greater_than |
| class | pattern_t |
| struct | section_t |
| class | step_t |
| class | track_impl_t |
| struct | track_parameter_t |
| class | track_t |
Typedefs | |
| template<std::size_t number_of_bytes> | |
| using | message_t = std::conditional_t< greater_than< number_of_bytes, 0 >::value, std::array< std::byte, number_of_bytes >, std::vector< std::byte > > |
| using | trig_condition_t = callable_t< bool > |
Enumerations | |
| enum | lfo_mode { lfo_mode::triangular = 0, lfo_mode::sine, lfo_mode::square, lfo_mode::saw, lfo_mode::exp, lfo_mode::ramp, lfo_mode::random } |
| enum | note_t : std::uint8_t { note_t::no_note = std::numeric_limits< std::uint8_t >::max() } |
| enum | percussion_key : std::uint8_t { percussion_key::PERCUSSION_KEYS } |
Functions | |
| auto | make_clock () |
| template<class MidiClock , class Sender > | |
| auto | start_clock_in_thread (MidiClock &midi_clock, const Sender &sender) |
| std::ostream & | operator<< (std::ostream &os, const device_entry_t &entry) |
| std::ostream & | operator<< (std::ostream &os, const section_t §ion) |
| std::regex | get_key_int_regex (const std::string &key) |
| void | read_entry (device_entry_t &entry, const std::string &buffer) |
| std::vector< section_t > | read_file (std::istream &file) |
| template<class T > | |
| T | lfo_impl (double pos, double period_length, double speed, double phase, T min, T max, lfo_mode mode) |
| template<class T > | |
| T | lfo (std::size_t pulse_count, std::size_t pulses_per_quarter_note, int speed, int phase, T min, T max, lfo_mode mode) |
| constexpr std::byte | status_byte_for (std::byte status_byte, std::uint8_t channel) noexcept |
| constexpr bool | check_status_byte (std::byte status_byte, std::byte message_byte) |
| constexpr std::array< std::uint8_t, 3 > | read_channel_with_two_7bit_values (const message_t< 3 > &message) noexcept |
| constexpr std::pair< std::byte, std::byte > | uint16_to_lsb_msb (std::uint16_t value) noexcept |
| constexpr std::uint16_t | lsb_msb_to_uint16 (const std::pair< std::byte, std::byte > &two_bytes) noexcept |
| constexpr note_t | no_note () noexcept |
| constexpr std::uint8_t | to_uint8_t (note_t note) noexcept |
| constexpr note_t | operator+ (note_t note, std::int16_t offset) |
| constexpr std::int16_t | get_note_distance (note_t lhs, note_t rhs) noexcept |
| template<class Track > | |
| pattern_t< Track > | make_pattern (std::size_t number_of_tracks, std::size_t number_of_steps, std::size_t pulses_per_quarter_note=default_pulses_per_quarter_note) noexcept |
| std::string_view | to_string (percussion_key key) |
| std::ostream & | operator<< (std::ostream &os, const step_t &step) |
| bool | operator== (const step_t &lhs, const step_t &rhs) noexcept |
| bool | operator!= (const step_t &lhs, const step_t &rhs) noexcept |
| template<class Track > | |
| void | copy_track (const Track &from, Track &to) noexcept(std::is_nothrow_copy_assignable< Track >::value) |
| template<class Tracks , class Sender > | |
| void | send_all_notes_off_message (Tracks &tracks, const Sender &sender) |
Variables | |
| constexpr auto | number_of_values_per_byte = 128 |
| constexpr auto | max_number_of_midi_channels = 16 |
| constexpr auto | default_pulses_per_quarter_note = 24u |
| const auto | key_sep = std::string( ":" ) |
| const auto | string_identifier_regex_str = std::string{"([a-zA-Z]+[\\sa-zA-Z0-9_]*)"} |
| using sequencer::midi::message_t = typedef std::conditional_t< greater_than< number_of_bytes, 0 >::value, std::array< std::byte, number_of_bytes >, std::vector< std::byte > > |
| using sequencer::midi::trig_condition_t = typedef callable_t< bool > |
|
strong |
|
strong |
|
strong |
| constexpr bool sequencer::midi::check_status_byte | ( | std::byte | status_byte, |
| std::byte | message_byte | ||
| ) |
|
noexcept |
|
inline |
| T sequencer::midi::lfo | ( | std::size_t | pulse_count, |
| std::size_t | pulses_per_quarter_note, | ||
| int | speed, | ||
| int | phase, | ||
| T | min, | ||
| T | max, | ||
| lfo_mode | mode | ||
| ) |
| T sequencer::midi::lfo_impl | ( | double | pos, |
| double | period_length, | ||
| double | speed, | ||
| double | phase, | ||
| T | min, | ||
| T | max, | ||
| lfo_mode | mode | ||
| ) |
|
noexcept |
|
inline |
|
noexcept |
|
noexcept |
|
inline |
|
inline |
|
inline |
|
noexcept |
|
inline |
|
inline |
| void sequencer::midi::send_all_notes_off_message | ( | Tracks & | tracks, |
| const Sender & | sender | ||
| ) |
| auto sequencer::midi::start_clock_in_thread | ( | MidiClock & | midi_clock, |
| const Sender & | sender | ||
| ) |
|
noexcept |
| std::string_view sequencer::midi::to_string | ( | percussion_key | key | ) |
|
noexcept |
|
noexcept |
| constexpr auto sequencer::midi::default_pulses_per_quarter_note = 24u |
| const auto sequencer::midi::key_sep = std::string( ":" ) |
| constexpr auto sequencer::midi::max_number_of_midi_channels = 16 |
| constexpr auto sequencer::midi::number_of_values_per_byte = 128 |
| const auto sequencer::midi::string_identifier_regex_str = std::string{"([a-zA-Z]+[\\sa-zA-Z0-9_]*)"} |
1.8.13