ardour
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Evoral::Note< Time > Singleton Reference

#include <midi_list_editor.h>

Public Member Functions

 Note (uint8_t chan=0, Time time=Time(), Time len=Time(), uint8_t note=0, uint8_t vel=0x40)
 
 Note (const Note< Time > &copy)
 
 ~Note ()
 
const Note< Time > & operator= (const Note< Time > &copy)
 
bool operator== (const Note< Time > &other)
 
event_id_t id () const
 
void set_id (event_id_t)
 
Time time () const
 
Time end_time () const
 
uint8_t note () const
 
uint8_t velocity () const
 
uint8_t off_velocity () const
 
Time length () const
 
uint8_t channel () const
 
void set_time (Time t)
 
void set_note (uint8_t n)
 
void set_velocity (uint8_t n)
 
void set_off_velocity (uint8_t n)
 
void set_length (Time l)
 
void set_channel (uint8_t c)
 
Event< Time > & on_event ()
 
const Event< Time > & on_event () const
 
Event< Time > & off_event ()
 
const Event< Time > & off_event () const
 

Private Member Functions

int clamp (int val, int low, int high)
 

Private Attributes

MIDIEvent< Time > _on_event
 
MIDIEvent< Time > _off_event
 

Detailed Description

template<typename Time>
singleton Evoral::Note< Time >

An abstract (protocol agnostic) note.

Currently a note is defined as (on event, length, off event).

Definition at line 35 of file midi_list_editor.h.

Constructor & Destructor Documentation

template<typename Time >
Note::Note ( uint8_t  chan = 0,
Time  time = Time(),
Time  len = Time(),
uint8_t  note = 0,
uint8_t  vel = 0x40 
)

Definition at line 29 of file Note.cpp.

template<typename Time >
Note::Note ( const Note< Time > &  copy)

Definition at line 54 of file Note.cpp.

template<typename Time >
Note::~Note ( )

Definition at line 82 of file Note.cpp.

Member Function Documentation

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

Definition at line 66 of file Note.hpp.

template<typename Time>
int Evoral::Note< Time >::clamp ( int  val,
int  low,
int  high 
)
inlineprivate

Definition at line 72 of file Note.hpp.

template<typename Time>
Time Evoral::Note< Time >::end_time ( ) const
inline

Definition at line 61 of file Note.hpp.

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

Definition at line 57 of file Note.hpp.

template<typename Time>
Time Evoral::Note< Time >::length ( ) const
inline

Definition at line 65 of file Note.hpp.

template<typename Time>
uint8_t Evoral::Note< Time >::note ( ) const
inline

Definition at line 62 of file Note.hpp.

template<typename Time>
Event<Time>& Evoral::Note< Time >::off_event ( )
inline

Definition at line 103 of file Note.hpp.

template<typename Time>
const Event<Time>& Evoral::Note< Time >::off_event ( ) const
inline

Definition at line 104 of file Note.hpp.

template<typename Time>
uint8_t Evoral::Note< Time >::off_velocity ( ) const
inline

Definition at line 64 of file Note.hpp.

template<typename Time>
Event<Time>& Evoral::Note< Time >::on_event ( )
inline

Definition at line 101 of file Note.hpp.

template<typename Time>
const Event<Time>& Evoral::Note< Time >::on_event ( ) const
inline

Definition at line 102 of file Note.hpp.

template<typename Time >
const Note< Time > & Note::operator= ( const Note< Time > &  copy)

Definition at line 95 of file Note.cpp.

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

Definition at line 48 of file Note.hpp.

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

Definition at line 95 of file Note.hpp.

template<typename Time >
void Note::set_id ( event_id_t  id)

Definition at line 87 of file Note.cpp.

template<typename Time>
void Evoral::Note< Time >::set_length ( Time  l)
inline

Definition at line 92 of file Note.hpp.

template<typename Time>
void Evoral::Note< Time >::set_note ( uint8_t  n)
inline

Definition at line 81 of file Note.hpp.

template<typename Time>
void Evoral::Note< Time >::set_off_velocity ( uint8_t  n)
inline

Definition at line 89 of file Note.hpp.

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

Definition at line 77 of file Note.hpp.

template<typename Time>
void Evoral::Note< Time >::set_velocity ( uint8_t  n)
inline

Definition at line 86 of file Note.hpp.

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

Definition at line 60 of file Note.hpp.

template<typename Time>
uint8_t Evoral::Note< Time >::velocity ( ) const
inline

Definition at line 63 of file Note.hpp.

Member Data Documentation

template<typename Time>
MIDIEvent<Time> Evoral::Note< Time >::_off_event
private

Definition at line 109 of file Note.hpp.

template<typename Time>
MIDIEvent<Time> Evoral::Note< Time >::_on_event
private

Definition at line 108 of file Note.hpp.


The documentation for this singleton was generated from the following files: