sequencer
Enumerations | Functions | Variables
sequencer::midi::system::exclusive::realtime Namespace Reference

Enumerations

enum  key_based_instrument_control_type : std::uint8_t {
  key_based_instrument_control_type::note_volume = 0x07, key_based_instrument_control_type::pan = 0x0A, key_based_instrument_control_type::timbre_harmonic_intensity = 0x47, key_based_instrument_control_type::release_time = 0x48,
  key_based_instrument_control_type::attack_time = 0x49, key_based_instrument_control_type::brightness = 0x4A, key_based_instrument_control_type::decay_time = 0x4B, key_based_instrument_control_type::vibrato_rate = 0x4C,
  key_based_instrument_control_type::vibrato_depth = 0x4D, key_based_instrument_control_type::vibrato_delay = 0x4E, key_based_instrument_control_type::reverb_send = 0x5B, key_based_instrument_control_type::chorus_send = 0x5D,
  key_based_instrument_control_type::fine_tuning = 0x78, key_based_instrument_control_type::coarse_tuning = 0x79
}
 

Functions

template<class... Data>
constexpr message_t< sizeof...(Data)+4u > system_exclusive (std::uint8_t manufacturer_id, Data &&... data) noexcept
 
constexpr message_t< 8 > device_control (std::uint8_t manufacturer_id, std::uint8_t key, std::uint16_t value) noexcept
 
constexpr message_t< 8 > master_volume (std::uint8_t manufacturer_id, std::uint16_t value) noexcept
 
constexpr message_t< 8 > master_balance (std::uint8_t manufacturer_id, std::uint16_t value) noexcept
 
constexpr message_t< 8 > master_fine_tuning (std::uint8_t manufacturer_id, std::uint16_t value) noexcept
 
constexpr message_t< 8 > master_coarse_tuning (std::uint8_t manufacturer_id, std::uint16_t value) noexcept
 
template<std::size_t... index>
constexpr message_t< 4+sizeof...(index) > make_sysex (std::uint8_t manufacturer_id, const message_t< sizeof...(index) > &data, std::index_sequence< index... >)
 
template<class Id , class Value , std::size_t number_of_values, std::size_t number_of_slots = 0>
constexpr message_t< 9+(sizeof(Id)+sizeof(Value)) *number_of_values+2 *number_of_slots > global_parameter_control (std::uint8_t manufacturer_id, const std::array< std::pair< Id, Value >, number_of_values > &id_value_pairs, const std::array< std::uint16_t, number_of_slots > &slots={}) noexcept
 
constexpr std::uint8_t to_uint8 (key_based_instrument_control_type type) noexcept
 
template<std::size_t number_of_entries>
constexpr message_t< 8+2 *number_of_entries > key_based_instrument_control (std::uint8_t manufacturer_id, std::uint8_t channel, std::uint8_t key, const std::array< std::pair< std::uint8_t, std::uint8_t >, number_of_entries > &number_value_pairs) noexcept
 

Variables

constexpr auto id_byte = std::byte{0x7F}
 

Enumeration Type Documentation

◆ key_based_instrument_control_type

Enumerator
note_volume 
pan 
timbre_harmonic_intensity 
release_time 
attack_time 
brightness 
decay_time 
vibrato_rate 
vibrato_depth 
vibrato_delay 
reverb_send 
chorus_send 
fine_tuning 
coarse_tuning 

Function Documentation

◆ device_control()

constexpr message_t< 8 > sequencer::midi::system::exclusive::realtime::device_control ( std::uint8_t  manufacturer_id,
std::uint8_t  key,
std::uint16_t  value 
)
noexcept

◆ global_parameter_control()

template<class Id , class Value , std::size_t number_of_values, std::size_t number_of_slots = 0>
constexpr message_t< 9 + ( sizeof( Id ) + sizeof( Value ) ) * number_of_values + 2 * number_of_slots > sequencer::midi::system::exclusive::realtime::global_parameter_control ( std::uint8_t  manufacturer_id,
const std::array< std::pair< Id, Value >, number_of_values > &  id_value_pairs,
const std::array< std::uint16_t, number_of_slots > &  slots = {} 
)
noexcept

◆ key_based_instrument_control()

template<std::size_t number_of_entries>
constexpr message_t< 8 + 2 * number_of_entries > sequencer::midi::system::exclusive::realtime::key_based_instrument_control ( std::uint8_t  manufacturer_id,
std::uint8_t  channel,
std::uint8_t  key,
const std::array< std::pair< std::uint8_t, std::uint8_t >, number_of_entries > &  number_value_pairs 
)
noexcept

◆ make_sysex()

template<std::size_t... index>
constexpr message_t< 4 + sizeof...( index ) > sequencer::midi::system::exclusive::realtime::make_sysex ( std::uint8_t  manufacturer_id,
const message_t< sizeof...(index) > &  data,
std::index_sequence< index... >   
)

◆ master_balance()

constexpr message_t< 8 > sequencer::midi::system::exclusive::realtime::master_balance ( std::uint8_t  manufacturer_id,
std::uint16_t  value 
)
noexcept

◆ master_coarse_tuning()

constexpr message_t< 8 > sequencer::midi::system::exclusive::realtime::master_coarse_tuning ( std::uint8_t  manufacturer_id,
std::uint16_t  value 
)
noexcept

◆ master_fine_tuning()

constexpr message_t< 8 > sequencer::midi::system::exclusive::realtime::master_fine_tuning ( std::uint8_t  manufacturer_id,
std::uint16_t  value 
)
noexcept

◆ master_volume()

constexpr message_t< 8 > sequencer::midi::system::exclusive::realtime::master_volume ( std::uint8_t  manufacturer_id,
std::uint16_t  value 
)
noexcept

◆ system_exclusive()

template<class... Data>
constexpr message_t< sizeof...( Data ) + 4u > sequencer::midi::system::exclusive::realtime::system_exclusive ( std::uint8_t  manufacturer_id,
Data &&...  data 
)
noexcept

◆ to_uint8()

constexpr std::uint8_t sequencer::midi::system::exclusive::realtime::to_uint8 ( key_based_instrument_control_type  type)
noexcept

Variable Documentation

◆ id_byte

constexpr auto sequencer::midi::system::exclusive::realtime::id_byte = std::byte{0x7F}