Ardour  9.0-pre0-582-g084a23a80d
Evoral::PatchChange< Time > Class Template Reference

#include <PatchChange.h>

Public Member Functions

 PatchChange (Time t, uint8_t c, uint8_t p, int b)
 
 PatchChange (const PatchChange &other)
 
 PatchChange ()
 
PatchChangeoperator= (PatchChange const &other)
 
void unset ()
 
bool is_set () const
 
event_id_t id () const
 
void set_id (event_id_t id)
 
Time time () const
 
void set_time (Time t)
 
void set_channel (uint8_t c)
 
uint8_t program () const
 
void set_program (uint8_t p)
 
int bank () const
 
void set_bank (int b)
 
uint8_t bank_msb () const
 
uint8_t bank_lsb () const
 
uint8_t channel () const
 
bool operator< (const PatchChange< Time > &o) const
 
bool operator== (const PatchChange< Time > &o) const
 
Event< Time > const & message (int i) const
 
int messages () const
 

Private Attributes

Event< Time > _bank_change_msb
 
Event< Time > _bank_change_lsb
 
Event< Time > _program_change
 

Detailed Description

template<typename Time>
class Evoral::PatchChange< Time >

Event representing a ‘patch change’, composed of a LSB and MSB bank select and then a program change.

Definition at line 36 of file PatchChange.h.

Constructor & Destructor Documentation

◆ PatchChange() [1/3]

template<typename Time >
Evoral::PatchChange< Time >::PatchChange ( Time  t,
uint8_t  c,
uint8_t  p,
int  b 
)
inline
Parameters
tTime.
cChannel.
pProgram change number (counted from 0).
bBank number (counted from 0, 14-bit).

Definition at line 44 of file PatchChange.h.

◆ PatchChange() [2/3]

template<typename Time >
Evoral::PatchChange< Time >::PatchChange ( const PatchChange< Time > &  other)
inline

Definition at line 63 of file PatchChange.h.

◆ PatchChange() [3/3]

template<typename Time >
Evoral::PatchChange< Time >::PatchChange ( )
inline

Definition at line 73 of file PatchChange.h.

Member Function Documentation

◆ bank()

template<typename Time >
int Evoral::PatchChange< Time >::bank ( ) const
inline

Definition at line 151 of file PatchChange.h.

◆ bank_lsb()

template<typename Time >
uint8_t Evoral::PatchChange< Time >::bank_lsb ( ) const
inline

Definition at line 166 of file PatchChange.h.

◆ bank_msb()

template<typename Time >
uint8_t Evoral::PatchChange< Time >::bank_msb ( ) const
inline

Definition at line 161 of file PatchChange.h.

◆ channel()

template<typename Time >
uint8_t Evoral::PatchChange< Time >::channel ( ) const
inline

Definition at line 171 of file PatchChange.h.

◆ id()

template<typename Time >
event_id_t Evoral::PatchChange< Time >::id ( ) const
inline

Definition at line 116 of file PatchChange.h.

◆ is_set()

template<typename Time >
bool Evoral::PatchChange< Time >::is_set ( ) const
inline

Definition at line 110 of file PatchChange.h.

◆ message()

template<typename Time >
Event<Time> const& Evoral::PatchChange< Time >::message ( int  i) const
inline

The PatchChange is made up of messages() MIDI messages; this method returns them by index.

Parameters
iindex of message to return.

Definition at line 196 of file PatchChange.h.

◆ messages()

template<typename Time >
int Evoral::PatchChange< Time >::messages ( ) const
inline
Returns
Number of MIDI messages that make up this change

Definition at line 212 of file PatchChange.h.

◆ operator<()

template<typename Time >
bool Evoral::PatchChange< Time >::operator< ( const PatchChange< Time > &  o) const
inline

Definition at line 176 of file PatchChange.h.

◆ operator=()

template<typename Time >
PatchChange& Evoral::PatchChange< Time >::operator= ( PatchChange< Time > const &  other)
inline

Definition at line 92 of file PatchChange.h.

◆ operator==()

template<typename Time >
bool Evoral::PatchChange< Time >::operator== ( const PatchChange< Time > &  o) const
inline

Definition at line 189 of file PatchChange.h.

◆ program()

template<typename Time >
uint8_t Evoral::PatchChange< Time >::program ( ) const
inline

Definition at line 142 of file PatchChange.h.

◆ set_bank()

template<typename Time >
void Evoral::PatchChange< Time >::set_bank ( int  b)
inline

Definition at line 156 of file PatchChange.h.

◆ set_channel()

template<typename Time >
void Evoral::PatchChange< Time >::set_channel ( uint8_t  c)
inline

Definition at line 136 of file PatchChange.h.

◆ set_id()

template<typename Time >
void Evoral::PatchChange< Time >::set_id ( event_id_t  id)
inline

Definition at line 120 of file PatchChange.h.

◆ set_program()

template<typename Time >
void Evoral::PatchChange< Time >::set_program ( uint8_t  p)
inline

Definition at line 147 of file PatchChange.h.

◆ set_time()

template<typename Time >
void Evoral::PatchChange< Time >::set_time ( Time  t)
inline

Definition at line 130 of file PatchChange.h.

◆ time()

template<typename Time >
Time Evoral::PatchChange< Time >::time ( ) const
inline

Definition at line 126 of file PatchChange.h.

◆ unset()

template<typename Time >
void Evoral::PatchChange< Time >::unset ( )
inline

Definition at line 103 of file PatchChange.h.

Member Data Documentation

◆ _bank_change_lsb

template<typename Time >
Event<Time> Evoral::PatchChange< Time >::_bank_change_lsb
private

Definition at line 218 of file PatchChange.h.

◆ _bank_change_msb

template<typename Time >
Event<Time> Evoral::PatchChange< Time >::_bank_change_msb
private

Definition at line 217 of file PatchChange.h.

◆ _program_change

template<typename Time >
Event<Time> Evoral::PatchChange< Time >::_program_change
private

Definition at line 219 of file PatchChange.h.


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