Ardour
9.0-pre0-582-g084a23a80d
|
#include <parser.h>
Public Member Functions | |
Parser () | |
~Parser () | |
samplecnt_t | get_timestamp () const |
void | set_timestamp (const samplecnt_t timestamp) |
void | scanner (byte c) |
size_t * | message_counts () |
const char * | midi_event_type_name (MIDI::eventType) |
void | trace (bool onoff, std::ostream *o, const std::string &prefix="") |
bool | tracing () |
void | set_offline (bool) |
bool | offline () const |
void | set_mmc_forwarding (bool yn) |
MTC_FPS | mtc_fps () const |
MTC_Status | mtc_running () const |
const byte * | mtc_current () const |
bool | mtc_locked () const |
void | set_mtc_forwarding (bool yn) |
void | reset_mtc_state () |
Private Types | |
enum | ParseState { NEEDSTATUS , NEEDONEBYTE , NEEDTWOBYTES , VARIABLELENGTH } |
Private Member Functions | |
void | trace_event (Parser &p, byte *msg, size_t len, samplecnt_t) |
void | channel_msg (byte) |
void | realtime_msg (byte) |
void | system_msg (byte) |
void | signal (byte *msg, size_t msglen) |
bool | possible_mmc (byte *msg, size_t msglen) |
bool | possible_mtc (byte *msg, size_t msglen) |
void | process_mtc_quarter_frame (byte *msg) |
Private Attributes | |
std::ostream * | trace_stream |
std::string | trace_prefix |
PBD::ScopedConnection | trace_connection |
size_t | message_counter [256] |
ParseState | state |
unsigned char * | msgbuf |
int | msglen |
int | msgindex |
MIDI::eventType | msgtype |
channel_t | channel |
bool | _offline |
bool | runnable |
bool | was_runnable |
bool | _mmc_forward |
bool | _mtc_forward |
int | expected_mtc_quarter_frame_code |
byte | _mtc_time [5] |
byte | _qtr_mtc_time [5] |
unsigned long | consecutive_qtr_frame_cnt |
MTC_FPS | _mtc_fps |
MTC_Status | _mtc_running |
bool | _mtc_locked |
byte | last_qtr_frame |
samplecnt_t | _timestamp |
ParseState | pre_variable_state |
MIDI::eventType | pre_variable_msgtype |
byte | last_status_byte |
|
private |
MIDI::Parser::Parser | ( | ) |
MIDI::Parser::~Parser | ( | ) |
|
private |
|
inline |
const char* MIDI::Parser::midi_event_type_name | ( | MIDI::eventType | ) |
|
inline |
|
private |
|
private |
|
private |
|
private |
void MIDI::Parser::reset_mtc_state | ( | ) |
void MIDI::Parser::scanner | ( | byte | c | ) |
void MIDI::Parser::set_offline | ( | bool | ) |
|
inline |
|
private |
|
private |
void MIDI::Parser::trace | ( | bool | onoff, |
std::ostream * | o, | ||
const std::string & | prefix = "" |
||
) |
|
private |
|
private |
|
private |
ZeroByteSignal MIDI::Parser::active_sense |
ZeroByteSignal MIDI::Parser::all_notes_off |
BankSignal MIDI::Parser::bank_change |
ZeroByteSignal MIDI::Parser::channel_active_postparse[16] |
ZeroByteSignal MIDI::Parser::channel_active_preparse[16] |
BankSignal MIDI::Parser::channel_bank_change[16] |
TwoByteSignal MIDI::Parser::channel_controller[16] |
TwoByteSignal MIDI::Parser::channel_note_off[16] |
TwoByteSignal MIDI::Parser::channel_note_on[16] |
RPNValueSignal MIDI::Parser::channel_nrpn[16] |
PitchBendSignal MIDI::Parser::channel_pitchbend[16] |
TwoByteSignal MIDI::Parser::channel_poly_pressure[16] |
OneByteSignal MIDI::Parser::channel_pressure[16] |
OneByteSignal MIDI::Parser::channel_program_change[16] |
RPNValueSignal MIDI::Parser::channel_rpn[16] |
|
private |
TimestampedSignal MIDI::Parser::contineu |
TwoByteSignal MIDI::Parser::controller |
PBD::Signal<int(byte *, size_t)> MIDI::Parser::edit |
ZeroByteSignal MIDI::Parser::eox |
|
private |
PBD::Signal<void(Parser &, int, samplecnt_t)> MIDI::Parser::mtc_qtr |
OneByteSignal MIDI::Parser::mtc_quarter_frame |
PBD::Signal<bool()> MIDI::Parser::mtc_skipped |
PBD::Signal<void(MTC_Status)> MIDI::Parser::mtc_status |
PBD::Signal<void(const byte *, bool, samplecnt_t)> MIDI::Parser::mtc_time |
TwoByteSignal MIDI::Parser::note_off |
TwoByteSignal MIDI::Parser::note_on |
PBD::Signal<void()> MIDI::Parser::OfflineStatusChanged |
PitchBendSignal MIDI::Parser::pitchbend |
TwoByteSignal MIDI::Parser::poly_pressure |
|
private |
|
private |
OneByteSignal MIDI::Parser::pressure |
OneByteSignal MIDI::Parser::program_change |
ZeroByteSignal MIDI::Parser::reset |
TimestampedSignal MIDI::Parser::start |
|
private |
TimestampedSignal MIDI::Parser::stop |
TimestampedSignal MIDI::Parser::tick |
TimestampedSignal MIDI::Parser::timing |
|
private |
ZeroByteSignal MIDI::Parser::tune |