sequencer
Public Types | Public Member Functions | List of all members
sequencer::midi::track_t< Step, Parameter > Class Template Reference

#include <track.hpp>

Public Types

using size_type = typename track_impl_t< Step, Parameter >::size_type
 
using value_type = typename track_impl_t< Step, Parameter >::value_type
 

Public Member Functions

 track_t (size_type size=64, size_type initial_size=16)
 
template<class Sender >
bool send_messages (std::size_t idx, const Sender &sender) const
 
template<class Sender >
void send_messages (message_t< 1 > message, const Sender &sender) const
 
template<class Sender >
void send_all_notes_off_message (const Sender &sender) const
 
std::size_t steps () const noexcept
 
void set_steps (std::size_t new_steps, std::size_t copy_offset=0)
 
value_typeoperator[] (size_type i) noexcept
 
const value_typeoperator[] (size_type i) const noexcept
 
constexpr void set_steps_per_beat (std::size_t steps) noexcept
 
constexpr void set_pulses_per_quarter_note (std::size_t pulses_per_quarter_note) noexcept
 
constexpr void reset_beat_counter () noexcept
 
auto midi_beat_counter () const noexcept
 
void clear () noexcept
 
template<class F >
void set_lfo (F f)
 
template<class F >
void set_lfo (std::uint8_t min, std::uint8_t max, F f)
 
Parameter & parameter () noexcept
 
const Parameter & parameter () const noexcept
 
constexpr void set_channel (std::uint8_t channel) noexcept
 
constexpr std::uint8_t channel () const noexcept
 
void mute (bool do_mute=true) noexcept
 
bool is_muted () const noexcept
 
constexpr note_t base_note () const noexcept
 
constexpr void set_speed_multiplier (double speed) noexcept
 
constexpr void set_loop_length (std::size_t loop_length) noexcept
 

Member Typedef Documentation

◆ size_type

template<class Step , class Parameter >
using sequencer::midi::track_t< Step, Parameter >::size_type = typename track_impl_t< Step, Parameter >::size_type

◆ value_type

template<class Step , class Parameter >
using sequencer::midi::track_t< Step, Parameter >::value_type = typename track_impl_t< Step, Parameter >::value_type

Constructor & Destructor Documentation

◆ track_t()

template<class Step , class Parameter >
sequencer::midi::track_t< Step, Parameter >::track_t ( size_type  size = 64,
size_type  initial_size = 16 
)
inlineexplicit

Member Function Documentation

◆ base_note()

template<class Step , class Parameter >
constexpr note_t sequencer::midi::track_t< Step, Parameter >::base_note ( ) const
inlinenoexcept

◆ channel()

template<class Step , class Parameter >
constexpr std::uint8_t sequencer::midi::track_t< Step, Parameter >::channel ( ) const
inlinenoexcept

◆ clear()

template<class Step , class Parameter >
void sequencer::midi::track_t< Step, Parameter >::clear ( )
inlinenoexcept

◆ is_muted()

template<class Step , class Parameter >
bool sequencer::midi::track_t< Step, Parameter >::is_muted ( ) const
inlinenoexcept

◆ midi_beat_counter()

template<class Step , class Parameter >
auto sequencer::midi::track_t< Step, Parameter >::midi_beat_counter ( ) const
inlinenoexcept

◆ mute()

template<class Step , class Parameter >
void sequencer::midi::track_t< Step, Parameter >::mute ( bool  do_mute = true)
inlinenoexcept

◆ operator[]() [1/2]

template<class Step , class Parameter >
value_type& sequencer::midi::track_t< Step, Parameter >::operator[] ( size_type  i)
inlinenoexcept

◆ operator[]() [2/2]

template<class Step , class Parameter >
const value_type& sequencer::midi::track_t< Step, Parameter >::operator[] ( size_type  i) const
inlinenoexcept

◆ parameter() [1/2]

template<class Step , class Parameter >
Parameter& sequencer::midi::track_t< Step, Parameter >::parameter ( )
inlinenoexcept

◆ parameter() [2/2]

template<class Step , class Parameter >
const Parameter& sequencer::midi::track_t< Step, Parameter >::parameter ( ) const
inlinenoexcept

◆ reset_beat_counter()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::reset_beat_counter ( )
inlinenoexcept

◆ send_all_notes_off_message()

template<class Step , class Parameter >
template<class Sender >
void sequencer::midi::track_t< Step, Parameter >::send_all_notes_off_message ( const Sender &  sender) const
inline

◆ send_messages() [1/2]

template<class Step , class Parameter >
template<class Sender >
bool sequencer::midi::track_t< Step, Parameter >::send_messages ( std::size_t  idx,
const Sender &  sender 
) const
inline

◆ send_messages() [2/2]

template<class Step , class Parameter >
template<class Sender >
void sequencer::midi::track_t< Step, Parameter >::send_messages ( message_t< 1 >  message,
const Sender &  sender 
) const
inline

◆ set_channel()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::set_channel ( std::uint8_t  channel)
inlinenoexcept

◆ set_lfo() [1/2]

template<class Step , class Parameter >
template<class F >
void sequencer::midi::track_t< Step, Parameter >::set_lfo ( f)
inline

◆ set_lfo() [2/2]

template<class Step , class Parameter >
template<class F >
void sequencer::midi::track_t< Step, Parameter >::set_lfo ( std::uint8_t  min,
std::uint8_t  max,
f 
)
inline

◆ set_loop_length()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::set_loop_length ( std::size_t  loop_length)
inlinenoexcept

◆ set_pulses_per_quarter_note()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::set_pulses_per_quarter_note ( std::size_t  pulses_per_quarter_note)
inlinenoexcept

◆ set_speed_multiplier()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::set_speed_multiplier ( double  speed)
inlinenoexcept

◆ set_steps()

template<class Step , class Parameter >
void sequencer::midi::track_t< Step, Parameter >::set_steps ( std::size_t  new_steps,
std::size_t  copy_offset = 0 
)
inline

◆ set_steps_per_beat()

template<class Step , class Parameter >
constexpr void sequencer::midi::track_t< Step, Parameter >::set_steps_per_beat ( std::size_t  steps)
inlinenoexcept

◆ steps()

template<class Step , class Parameter >
std::size_t sequencer::midi::track_t< Step, Parameter >::steps ( ) const
inlinenoexcept

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