Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::MidiStateTracker Class Reference

#include <midi_state_tracker.h>

Inheritance diagram for ARDOUR::MidiStateTracker:
[legend]

Public Member Functions

 MidiStateTracker ()
 
 ~MidiStateTracker ()
 
void track (const uint8_t *evbuf)
 
void dump (std::ostream &) const
 
void reset ()
 
void flush (MidiBuffer &, samplepos_t, bool reset)
 
void resolve_state (Evoral::EventSink< samplepos_t > &, Evoral::EventList< samplepos_t > const &, samplepos_t time, bool reset=true)
 
void resolve_diff (MidiStateTracker const &other, Evoral::EventSink< samplepos_t > &, samplepos_t time, bool reset=true)
 
- Public Member Functions inherited from ARDOUR::MidiNoteTracker
 MidiNoteTracker ()
 
virtual ~MidiNoteTracker ()
 
void track (const MidiBuffer::const_iterator &from, const MidiBuffer::const_iterator &to)
 
void add (uint8_t note, uint8_t chn)
 
void remove (uint8_t note, uint8_t chn)
 
void resolve_notes (MidiBuffer &buffer, samplepos_t time, bool reset=true)
 
void resolve_notes (Evoral::EventSink< samplepos_t > &buffer, samplepos_t time)
 
void resolve_notes (MidiSource &src, const Source::WriterLock &lock, Temporal::Beats time)
 
void flush_notes (MidiBuffer &buffer, samplepos_t time, bool reset=true)
 
bool empty () const
 
uint16_t on () const
 
bool active (uint8_t note, uint8_t channel) const
 
template<typename Time >
void track (const Evoral::Event< Time > &ev)
 

Private Attributes

uint8_t program [16]
 
uint16_t bender [16]
 
uint16_t pressure [16]
 
uint8_t control [16][127]
 

Detailed Description

Definition at line 79 of file midi_state_tracker.h.

Constructor & Destructor Documentation

◆ MidiStateTracker()

ARDOUR::MidiStateTracker::MidiStateTracker ( )

◆ ~MidiStateTracker()

ARDOUR::MidiStateTracker::~MidiStateTracker ( )
inline

Definition at line 83 of file midi_state_tracker.h.

Member Function Documentation

◆ dump()

void ARDOUR::MidiStateTracker::dump ( std::ostream &  ) const
virtual

Reimplemented from ARDOUR::MidiNoteTracker.

◆ flush()

void ARDOUR::MidiStateTracker::flush ( MidiBuffer ,
samplepos_t  ,
bool  reset 
)

◆ reset()

void ARDOUR::MidiStateTracker::reset ( )
virtual

Reimplemented from ARDOUR::MidiNoteTracker.

◆ resolve_diff()

void ARDOUR::MidiStateTracker::resolve_diff ( MidiStateTracker const &  other,
Evoral::EventSink< samplepos_t > &  ,
samplepos_t  time,
bool  reset = true 
)

◆ resolve_state()

void ARDOUR::MidiStateTracker::resolve_state ( Evoral::EventSink< samplepos_t > &  ,
Evoral::EventList< samplepos_t > const &  ,
samplepos_t  time,
bool  reset = true 
)

◆ track()

void ARDOUR::MidiStateTracker::track ( const uint8_t *  evbuf)
virtual

Reimplemented from ARDOUR::MidiNoteTracker.

Member Data Documentation

◆ bender

uint16_t ARDOUR::MidiStateTracker::bender[16]
private

Definition at line 95 of file midi_state_tracker.h.

◆ control

uint8_t ARDOUR::MidiStateTracker::control[16][127]
private

Definition at line 97 of file midi_state_tracker.h.

◆ pressure

uint16_t ARDOUR::MidiStateTracker::pressure[16]
private

Definition at line 96 of file midi_state_tracker.h.

◆ program

uint8_t ARDOUR::MidiStateTracker::program[16]
private

Definition at line 94 of file midi_state_tracker.h.


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