BuGUI
BUtton Grid User Interface
Loading...
Searching...
No Matches
bugui::midi< Component > Class Template Reference

Allows for sending and receiving MIDI messages. More...

#include <midi.hpp>

Inheritance diagram for bugui::midi< Component >:
bugui::midi_common bugui::base_hardware bugui::protocol< Component > bugui::clear< Component > bugui::init< Component >

Protected Member Functions

void send (std::function< void(midi_formater< Component > &)> &&func)
void on_message_received (std::function< bool(uint8_t, uint8_t)> &&func)
stdx::error set_midi_in_port (const libremidi::observer &observer, std::string_view port_name) override
stdx::error set_midi_out_port (const libremidi::observer &observer, std::string_view port_name) override
virtual void setup ()=0
 Sends any preliminary commands needed by the device ie. initialising to a particular mode like XY (Launchpad mini/S) programmer (Launchpad Pro), notes, drum pads, sliders...
virtual void reset ()=0
 Turns off all diplays (LEDs, screens, visual feedback).
virtual int width () const
 Retrieves the with of the device's grid.
virtual int height () const
 Retrieves the height of the device's grid.
virtual void set_grid (painter &)
 Pass a reference to the painter object and display it's content to the grid.
virtual void set_button (const button_painter &)
 Pass a reference to the button_painter object and display it's content to the device's buttons.

Additional Inherited Members

Protected Attributes inherited from bugui::midi_common
std::unique_ptr< libremidi::midi_in > m_input
libremidi::midi_out m_output
std::vector< std::function< bool(uint8_t, uint8_t)> > cc_functions
std::vector< std::function< bool(uint8_t, uint8_t)> > on_off_functions

Detailed Description

template<midi_component Component>
class bugui::midi< Component >

Allows for sending and receiving MIDI messages.


The documentation for this class was generated from the following file:
  • include/bugui/hardware/protocol/midi/midi.hpp