Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
pulp::midi::RunningStatusParser Class Reference

#include <running_status.hpp>

Public Member Functions

 RunningStatusParser ()=default
void on_short_message (ShortMessageSink sink)
void on_sysex (SysexSink sink)
void reserve_sysex (std::size_t worst_case_body_bytes)
 Prepare internal SysEx body storage for realtime use.
void feed (const uint8_t *data, std::size_t size)
 Feed a byte stream.
void reset ()
 Reset the parser — clears running status + any in-flight sysex.

Constructor & Destructor Documentation

◆ RunningStatusParser()

pulp::midi::RunningStatusParser::RunningStatusParser ( )
default

Member Function Documentation

◆ feed()

void pulp::midi::RunningStatusParser::feed ( const uint8_t * data,
std::size_t size )

Feed a byte stream.

Call from the MIDI I/O thread; the parser itself is single-threaded (one instance per input port).

◆ on_short_message()

void pulp::midi::RunningStatusParser::on_short_message ( ShortMessageSink sink)
inline

◆ on_sysex()

void pulp::midi::RunningStatusParser::on_sysex ( SysexSink sink)
inline

◆ reserve_sysex()

void pulp::midi::RunningStatusParser::reserve_sysex ( std::size_t worst_case_body_bytes)

Prepare internal SysEx body storage for realtime use.

The stored body excludes the F0 start byte and F7 terminator.

◆ reset()

void pulp::midi::RunningStatusParser::reset ( )

Reset the parser — clears running status + any in-flight sysex.

Platform backends invoke this on port open / reset events.


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