![]() |
ERIS CORE
|
basic MIDI pub/sub service which is delivered through the subscribed objects message handler method. multiple subscribers is supported, bound by MAX_MIDI_MESSAGE_APP_SUBSCRIPTIONS More...
#include "SvcMidi.h"
Public Member Functions | |
SvcMIDI () | |
void | getFocus () |
Get focus from the AppManager. More... | |
uint16_t | getID () |
Get the ID object. More... | |
bool | isName (const char *name_string) |
Compares the name_string to the app class instance name (string) More... | |
void | messageHandler (AppBaseClass *sender, const char *message) |
messageHandler for receiving subscription (SUB) request messages More... | |
void | publish (const char *message) |
public interface for the midi callback functions to publish messages to subscribers through their message handlers More... | |
void | registerApp (AppBaseClass *app) |
registers the app instance with the AppManager More... | |
void | setDimension (int16_t new_width, int16_t new_height) |
Set the Dimension object. More... | |
void | setName (const char *name_string) |
Set the app class instance name (string) More... | |
void | setParent (AppBaseClass *parent) |
Set the Parent object. More... | |
void | setPosition (int16_t new_origin_x, int16_t new_origin_y) |
Set the Position object. More... | |
void | setWidgetDimension (int16_t new_width, int16_t new_height) |
Set the Widget Dimension object. More... | |
void | setWidgetPosition (int16_t new_origin_x, int16_t new_origin_y) |
Set the Widget Position object. More... | |
bool | subscribe (uint16_t app_id) |
interface for apps to request a subscription to receive incoming MIDI messages through theIr message handlers More... | |
Public Attributes | |
int16_t | h |
int16_t | height |
char | name [MAX_NAME_LENGTH] |
int16_t | origin_x |
int16_t | origin_y |
int16_t | w |
int16_t | widget_height |
int16_t | widget_origin_x |
int16_t | widget_origin_y |
int16_t | widget_width |
int16_t | width |
int16_t | x |
int16_t | y |
Protected Member Functions | |
void | _updatePosition () |
void | midiInit () |
void | onAnalog1 (uint16_t uval, float fval) override |
Event handler for analog 1 event. More... | |
void | onAnalog2 (uint16_t uval, float fval) override |
Event handler for analog 2 event. More... | |
void | onAnalog3 (uint16_t uval, float fval) override |
Event handler for analog 3 event. More... | |
void | onAnalog4 (uint16_t uval, float fval) override |
Event handler for analog 4 event. More... | |
void | onFocus () override |
Event handler called when the app gains focus. More... | |
void | onFocusLost () override |
Event handler called when the app loses focus. More... | |
void | onTouch (uint16_t t_x, uint16_t t_y) override |
Event handler called on touch. More... | |
void | onTouchDrag (uint16_t t_x, uint16_t t_y) override |
Event handler for touch drag. More... | |
void | onTouchRelease (uint16_t t_x, uint16_t t_y) override |
Event handler for touch release. More... | |
void | releasePopUp () |
gives up popup More... | |
void | render () override |
render loop More... | |
void | requestPopUp (bool exclusive=false) |
request popup from the AppManager will be activated by the next render loop applications in popup mode are guaranteed to be rendered last; preventing any overdraw exclusive mode option blocks the render calls of all other apps by the AppManager usefull for taking over full screen rendering while allowing the apps update loops to continue. More... | |
void | returnFocus () |
give up focus More... | |
void | selfRegister () |
self register the instance with the AppManager More... | |
void | setUpdatePriority (uint16_t level) |
Set the update priority the level sets the number of update opportunities before the update method is actually called. More... | |
void | update () override |
update loop More... | |
Protected Attributes | |
AudioDirector * | ad |
AppManager * | am |
uint16_t | cycle_time |
uint16_t | cycle_time_max |
ILI9341_t3_ERIS * | draw |
elapsedMicros | et_render_period |
elapsedMicros | et_update_period |
bool | has_focus |
bool | has_pop |
uint16_t | id |
bool | midi_init |
AppBaseClass * | next_app_node |
AppBaseClass * | parent_node |
AppBaseClass * | previous_app_node |
uint16_t | render_cpu_time |
uint16_t | render_cpu_time_max |
uint16_t | render_period_max |
SvcSerialCommandInterface * | sci |
SdFs * | sd |
uint16_t | subscriptions [MAX_MIDI_MESSAGE_APP_SUBSCRIPTIONS] |
bool | touch_state |
uint16_t | update_cpu_time |
uint16_t | update_cpu_time_max |
uint16_t | update_period_max |
uint16_t | update_priority |
uint16_t | update_priority_counter |
basic MIDI pub/sub service which is delivered through the subscribed objects message handler method. multiple subscribers is supported, bound by MAX_MIDI_MESSAGE_APP_SUBSCRIPTIONS