| backend | GenericBLEMIDI_Interface< Backend > |  | 
  | begin() override | GenericBLEMIDI_Interface< Backend > | virtual | 
  | beginAll() | Updatable< MIDI_Interface > | inlinestatic | 
  | beginAll() | Updatable< MIDI_Interface > | inlinestatic | 
  | ble_settings | GenericBLEMIDI_Interface< Backend > |  | 
  | callbacks | MIDI_Interface | private | 
  | connectSinkPipe(MIDI_Pipe *sink) | MIDI_Source |  | 
  | connectSourcePipe(MIDI_Pipe *source) | MIDI_Sink |  | 
  | DefaultMIDI_Interface | MIDI_Interface | privatestatic | 
  | disable() | UpdatableCRTP< Derived > | inline | 
  | disable(UpdatableCRTP *element) | UpdatableCRTP< Derived > | inlinestatic | 
  | disable(UpdatableCRTP &element) | UpdatableCRTP< Derived > | inlinestatic | 
  | disable(U(&array)[N]) | UpdatableCRTP< Derived > | inlinestatic | 
  | MIDI_Sink::disconnect(TrueMIDI_Source &source) | MIDI_Sink |  | 
  | MIDI_Sink::disconnect(MIDI_Pipe &)=delete | MIDI_Sink |  | 
  | MIDI_Source::disconnect(TrueMIDI_Sink &sink) | MIDI_Source |  | 
  | MIDI_Source::disconnect(MIDI_Pipe &)=delete | MIDI_Source |  | 
  | disconnectSinkPipes() | MIDI_Source |  | 
  | disconnectSinkPipesShallow() | MIDI_Source | private | 
  | disconnectSourcePipes() | MIDI_Sink |  | 
  | disconnectSourcePipesShallow() | MIDI_Sink | private | 
  | dispatchIncoming(MIDIInterface_t *iface, MIDIReadEvent event) | MIDI_Interface | static | 
  | DoublyLinkable()=default | DoublyLinkable< Derived > | protected | 
  | DoublyLinkable(const DoublyLinkable &) | DoublyLinkable< Derived > | inlineprotected | 
  | DoublyLinkable(DoublyLinkable &&) | DoublyLinkable< Derived > | inlineprotected | 
  | enable() | UpdatableCRTP< Derived > | inline | 
  | enable(UpdatableCRTP *element) | UpdatableCRTP< Derived > | inlinestatic | 
  | enable(UpdatableCRTP &element) | UpdatableCRTP< Derived > | inlinestatic | 
  | enable(U(&array)[N]) | UpdatableCRTP< Derived > | inlinestatic | 
  | end() | GenericBLEMIDI_Interface< Backend > |  | 
  | GenericBLEMIDI_Interface(Args &&...args) | GenericBLEMIDI_Interface< Backend > | inline | 
  | getChannelMessage() const | GenericBLEMIDI_Interface< Backend > |  | 
  | getDefault() | MIDI_Interface | static | 
  | getFinalSink() | MIDI_Sink | inlineprivatevirtual | 
  | getInitialSource() | MIDI_Source | inlineprivatevirtual | 
  | getName() const override | GenericBLEMIDI_Interface< Backend > | inlineprivatevirtual | 
  | getNameNull(MIDIStaller *s) | MIDIStaller | protectedstatic | 
  | getRealTimeMessage() const | GenericBLEMIDI_Interface< Backend > |  | 
  | getSinkPipe() | MIDI_Source | inline | 
  | getSourcePipe() const | MIDI_Sink | inline | 
  | getStaller() const | MIDI_Source |  | 
  | getStallerName() const | MIDI_Source |  | 
  | getSysCommonMessage() const | GenericBLEMIDI_Interface< Backend > |  | 
  | getSysExMessage() const | GenericBLEMIDI_Interface< Backend > |  | 
  | getTimestamp() const | GenericBLEMIDI_Interface< Backend > |  | 
  | handleStall() override | GenericBLEMIDI_Interface< Backend > | inlineprivatevirtual | 
  | MIDI_Interface::handleStall(MIDIInterface_t *self) | MIDI_Interface | static | 
  | handleStallers() const | MIDI_Source |  | 
  | hasSinkPipe() const | MIDI_Source | inline | 
  | hasSourcePipe() const | MIDI_Sink | inline | 
  | incomingMessage | GenericBLEMIDI_Interface< Backend > | private | 
  | isConnected() const | GenericBLEMIDI_Interface< Backend > | inline | 
  | isEnabled() const | UpdatableCRTP< Derived > | inline | 
  | isStalled() const | MIDI_Source |  | 
  | MIDI_Interface()=default | MIDI_Interface | protected | 
  | MIDI_Interface(MIDI_Interface &&)=default | MIDI_Interface | protected | 
  | MIDI_Sink()=default | MIDI_Sink |  | 
  | MIDI_Sink(const MIDI_Sink &)=delete | MIDI_Sink |  | 
  | MIDI_Sink(MIDI_Sink &&other) | MIDI_Sink |  | 
  | MIDI_Source()=default | MIDI_Source |  | 
  | MIDI_Source(const MIDI_Source &)=delete | MIDI_Source |  | 
  | MIDI_Source(MIDI_Source &&other) | MIDI_Source |  | 
  | moveDown() | UpdatableCRTP< Derived > | inline | 
  | next | DoublyLinkable< Derived > | protected | 
  | onChannelMessage(ChannelMessage message) | MIDI_Interface | protected | 
  | onRealTimeMessage(RealTimeMessage message) | MIDI_Interface | protected | 
  | onSysCommonMessage(SysCommonMessage message) | MIDI_Interface | protected | 
  | onSysExMessage(SysExMessage message) | MIDI_Interface | protected | 
  | TrueMIDI_SinkSource::MIDI_Sink::operator=(const MIDI_Sink &)=delete | MIDI_Sink |  | 
  | TrueMIDI_SinkSource::MIDI_Sink::operator=(MIDI_Sink &&other) | MIDI_Sink |  | 
  | TrueMIDI_SinkSource::MIDI_Source::operator=(const MIDI_Source &)=delete | MIDI_Source |  | 
  | TrueMIDI_SinkSource::MIDI_Source::operator=(MIDI_Source &&other) | MIDI_Source |  | 
  | Updatable< MIDI_Interface >::operator=(const UpdatableCRTP &) | UpdatableCRTP< Derived > | inlineprotected | 
  | Updatable< MIDI_Interface >::operator=(UpdatableCRTP &&) | UpdatableCRTP< Derived > | inlineprotected | 
  | DoublyLinkable< Derived >::operator=(const DoublyLinkable &) | DoublyLinkable< Derived > | inlineprotected | 
  | DoublyLinkable< Derived >::operator=(DoublyLinkable &&) | DoublyLinkable< Derived > | inlineprotected | 
  | previous | DoublyLinkable< Derived > | protected | 
  | read() | GenericBLEMIDI_Interface< Backend > |  | 
  | send(ChannelMessage message) | MIDI_Sender< MIDI_Interface > |  | 
  | send(SysCommonMessage message) | MIDI_Sender< MIDI_Interface > |  | 
  | send(SysExMessage message) | MIDI_Sender< MIDI_Interface > |  | 
  | send(RealTimeMessage message) | MIDI_Sender< MIDI_Interface > |  | 
  | sendActiveSensing(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendCC(MIDIAddress address, uint8_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendChannelMessage(MIDIMessageType m, Channel c, uint8_t d1, uint8_t d2, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendChannelMessage(MIDIMessageType m, Channel c, uint8_t d1, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendChannelMessageImpl(ChannelMessage) override | GenericBLEMIDI_Interface< Backend > | privatevirtual | 
  | sendChannelPressure(MIDIChannelCable address, uint8_t pressure) | MIDI_Sender< MIDI_Interface > |  | 
  | sendContinue(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendControlChange(MIDIAddress address, uint8_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendCP(MIDIChannelCable address, uint8_t pressure) | MIDI_Sender< MIDI_Interface > |  | 
  | sendImpl(L &lck, F add_to_buffer) | GenericBLEMIDI_Interface< Backend > | private | 
  | sendKeyPressure(MIDIAddress address, uint8_t pressure) | MIDI_Sender< MIDI_Interface > |  | 
  | sendKP(MIDIAddress address, uint8_t pressure) | MIDI_Sender< MIDI_Interface > |  | 
  | sendMTCQuarterFrame(uint8_t data, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendMTCQuarterFrame(uint8_t messageType, uint8_t values, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendNoteOff(MIDIAddress address, uint8_t velocity) | MIDI_Sender< MIDI_Interface > |  | 
  | sendNoteOn(MIDIAddress address, uint8_t velocity) | MIDI_Sender< MIDI_Interface > |  | 
  | sendNow() | MIDI_Sender< MIDI_Interface > |  | 
  | sendNowImpl() override | GenericBLEMIDI_Interface< Backend > | privatevirtual | 
  | sendPB(MIDIChannelCable address, uint16_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendPC(MIDIAddress address) | MIDI_Sender< MIDI_Interface > |  | 
  | sendPC(MIDIChannelCable address, uint8_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendPitchBend(MIDIChannelCable address, uint16_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendProgramChange(MIDIAddress address) | MIDI_Sender< MIDI_Interface > |  | 
  | sendProgramChange(MIDIChannelCable address, uint8_t value) | MIDI_Sender< MIDI_Interface > |  | 
  | sendRealTime(MIDIMessageType rt, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendRealTime(uint8_t rt, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendRealTimeImpl(RealTimeMessage) override | GenericBLEMIDI_Interface< Backend > | privatevirtual | 
  | sendSongPositionPointer(uint16_t spp, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSongSelect(uint8_t song, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendStart(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendStop(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysCommon(MIDIMessageType m, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysCommon(MIDIMessageType m, uint8_t data1, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysCommon(MIDIMessageType m, uint8_t data1, uint8_t data2, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysCommonImpl(SysCommonMessage) override | GenericBLEMIDI_Interface< Backend > | privatevirtual | 
  | sendSysEx(const uint8_t(&sysexdata)[N], Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysEx(const uint8_t *data, uint16_t length, Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendSysExImpl(SysExMessage) override | GenericBLEMIDI_Interface< Backend > | privatevirtual | 
  | sendSystemReset(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendTimingClock(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | sendTuneRequest(Cable cable=Cable_1) | MIDI_Sender< MIDI_Interface > |  | 
  | setAsDefault() | MIDI_Interface |  | 
  | setCallbacks(MIDI_Callbacks *cb) | MIDI_Interface | inline | 
  | setCallbacks(MIDI_Callbacks &cb) | MIDI_Interface | inline | 
  | setName(const char *name) | GenericBLEMIDI_Interface< Backend > |  | 
  | setTimeout(std::chrono::milliseconds timeout) | GenericBLEMIDI_Interface< Backend > | inline | 
  | sinkMIDIfromPipe(ChannelMessage msg) override | MIDI_Interface | inlineprotectedvirtual | 
  | sinkMIDIfromPipe(SysExMessage msg) override | MIDI_Interface | inlineprotectedvirtual | 
  | sinkMIDIfromPipe(SysCommonMessage msg) override | MIDI_Interface | inlineprotectedvirtual | 
  | sinkMIDIfromPipe(RealTimeMessage msg) override | MIDI_Interface | inlineprotectedvirtual | 
  | sinkPipe | MIDI_Source | protected | 
  | sourceMIDItoPipe(ChannelMessage) | MIDI_Source |  | 
  | sourceMIDItoPipe(SysExMessage) | MIDI_Source |  | 
  | sourceMIDItoPipe(SysCommonMessage) | MIDI_Source |  | 
  | sourceMIDItoPipe(RealTimeMessage) | MIDI_Source |  | 
  | sourcePipe | MIDI_Sink | protected | 
  | stall(MIDIStaller *cause=eternal_stall) | MIDI_Source |  | 
  | stallDownstream(MIDIStaller *, MIDI_Source *) | MIDI_Sink | inlineprivatevirtual | 
  | stallUpstream(MIDIStaller *, MIDI_Sink *) | MIDI_Source | inlineprivatevirtual | 
  | MIDI_Sink::swap(MIDI_Sink &a, MIDI_Sink &b) | MIDI_Sink | static | 
  | MIDI_Source::swap(MIDI_Source &a, MIDI_Source &b) | MIDI_Source | static | 
  | unstall(MIDIStaller *cause=eternal_stall) | MIDI_Source |  | 
  | unstallDownstream(MIDIStaller *, MIDI_Source *) | MIDI_Sink | inlineprivatevirtual | 
  | unstallUpstream(MIDIStaller *, MIDI_Sink *) | MIDI_Source | inlineprivatevirtual | 
  | UpdatableCRTP() __attribute__((no_sanitize("undefined"))) | UpdatableCRTP< Derived > | inlineprotected | 
  | UpdatableCRTP(const UpdatableCRTP &) __attribute__((no_sanitize("undefined"))) | UpdatableCRTP< Derived > | inlineprotected | 
  | UpdatableCRTP(UpdatableCRTP &&) __attribute__((no_sanitize("undefined"))) | UpdatableCRTP< Derived > | inlineprotected | 
  | updatables | UpdatableCRTP< Derived > | protectedstatic | 
  | update() override | GenericBLEMIDI_Interface< Backend > | inlinevirtual | 
  | updateAll() | Updatable< MIDI_Interface > | inlinestatic | 
  | updateAll() | Updatable< MIDI_Interface > | inlinestatic | 
  | updateIncoming(MIDIInterface_t *iface) | MIDI_Interface | static | 
  | ~DoublyLinkable()=default | DoublyLinkable< Derived > | protectedvirtual | 
  | ~MIDI_Interface() | MIDI_Interface | virtual | 
  | ~MIDI_Sink() | MIDI_Sink | virtual | 
  | ~MIDI_Source() | MIDI_Source | virtual | 
  | ~MIDIStaller()=default | MIDIStaller | protectedvirtual | 
  | ~UpdatableCRTP() __attribute__((no_sanitize("undefined"))) | UpdatableCRTP< Derived > | inlinevirtual |