BuGUI
BUtton Grid User Interface
Loading...
Searching...
No Matches
Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456]
 Cbugui::base_converter< Value_t >Provides base functionalities for converting color objects to devices specific colour values
 Cbugui::base_converter< color::rgba >
 Cbugui::color_converter< T, color::rgba >Basic wrapper for devices supporting RGBA colours
 Cbugui::color_converter< T, color::rgba >Basic wrapper for devices supporting RGBA colours
 Cbugui::base_converter< uint8_t >
 Cbugui::color_converter< typename color_t< Device, class Device::buttons >::type >
 Cbugui::color_converter< typename color_t< Device, class Device::grid >::type >
 Cbugui::color_converter< typename Component::color_t >
 Cbugui::color_converter< T, uint8_t >Converts color objects for grayscal only devices
 Cbugui::color_converter< T, Value_t >Povides convertion of color objects to device specific integer values
 Cbugui::color_converter< T, uint8_t >Converts color objects for grayscal only devices
 Cbugui::base_hardwareProvides base functionalities of the hardware object, and enables access from the base_controller
 Cbugui::buttons< Device, Controller >Handles presses and enables painting on the device's labelled buttons
 Cbugui::hardware< Device, Controller >Inherits from all type of hardware components like grid, buttons... Provides the hardware type with the functionalities to interact with each components
 Cbugui::grid< Device, Controller >Handle presses and enables painting on the device's button grid
 Cbugui::hardware< Device, Controller >Inherits from all type of hardware components like grid, buttons... Provides the hardware type with the functionalities to interact with each components
 Cbugui::midi_commonHolds MIDI port objects for access by derived classes. It also enables components to register their callback funcitons
 Cbugui::midi< Component >Allows for sending and receiving MIDI messages
 Cbugui::base_midi_formater< Component >Provides underlying functionalities to format and store MIDI messages, before applying blinking or pulsing effects
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::dual_blinker< Component >Enables the use of multiple buffers targetting diferent midi Channels. This method is used for devices and components expecting MIDI messages on 2 diffrent channels to blink LED's
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::dual_pulser< Component >Enables the use of multiple buffers targetting diferent midi Channels. This method is used for devices and components expecting MIDI messages on 2 diffrent channels to pulse LED's
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::midi_formater< Component >Empty enum for devices that do not feature anny blinking or pulsing functionalities
 Cbugui::midi_formater< Component >Provides necesary functionalities to format and store MIDI messages. A Blinking effect can also be applied by storing a color value in a diferent MIDI buffer, to be sent to the dedicated channel
 Cbugui::base_painterHolds a color object and provides the relevant setters
 Cbugui::button_painterConveys button colors from the controller to the base_hardware
 Cbugui::painterAdds 2D information on top of a base_painter. The painter is used in user defined paint funcions to draw on the device. Meant to traverse the entire widget tree, each widget temporarly applies a coordinate offset to the painter, reflecting their relative position in the scene
 Cbugui::button_presserProvides a generic interface to represent a button press event by the user on the device
 Cbugui::presserAdds 2D information on top of a button_presser. Meant to traverse the entire widget tree, each widget temporarly applies a coordinate offset to the paresser, reflecting their relative position in the scene
 Cbugui::buttons< Device, Controller >Empty struct for devices that do not feature labelled buttons
 Cbugui::clear< T >Empty struct for devices or componants that do not provide a command to clear all feedback (LED's, sceen...)
 Cbugui::clear< component< Device, class Device::buttons > >
 Cbugui::buttons< Device, Controller >Handles presses and enables painting on the device's labelled buttons
 Cbugui::clear< component< Device, class Device::grid > >
 Cbugui::grid< Device, Controller >Handle presses and enables painting on the device's button grid
 Cbugui::clear_t< Device, Component >Primary template. To be specialized
 Cbugui::clear_t< Device, Component >Provides a type alias for the clear nested type of the Device, only if the Component type does not also feature a clear nested type
 Cbugui::colorGeneric colour class holding RGBA coloour values. The blinking and pulsing states indicate discrete or smooth cycling between the LED lit with the specified colour, and the LED turned off (set to black)
 Cbugui::color_t< Device, Component >Primary template for a Device and a Component that do not feature a color nested type
 Cbugui::color_t< Device, Component >Provides a type alias for the nested color type of the Device, only if the Component does not also feature a nested color type
 Cbugui::common< Controller >Inherits from all type of hardware components like grid, buttons... Provides the hardware type with the functionalities to interact with each components
 Cbugui::buttons< Device, Controller >Handles presses and enables painting on the device's labelled buttons
 Cbugui::grid< Device, Controller >Handle presses and enables painting on the device's button grid
 Cbugui::component< Device, Component >Primary template. To be specialized
 Cbugui::component< Device, Component >Providestype aliases for all MIDI relevant parts of a Device and a specific Component
 Cbugui::ctrlr_shifter< T >Ensures that buttons labeled Shift are registered on press and can be queried with Shift_held, event if on_Shift is not defined by the user
 Cbugui::ctrlr_shifter< T >Basic wrapper to handle user defined on_Shift function
 Cbugui::controller< T >Main class to inherit from. Acts ast the root of the widget tree, and provides generic access to the hardware through the painter and presser objects
 Cbugui::grid< Device, Controller >Empty struct for devices that do not feature a button grid
 CH
 Cbugui::deleter< T, base_container_widget, true >
 Cbugui::container_widget< T, can_delete >To be inherited to create custom wigets whcih can hold other widgets as children. Derived classes must be passeed as the template type
 Cbugui::deleter< T, base_widget, true >
 Cbugui::widget< T, can_delete >To be inherited for creating custom wigets. Derived classes must be passeed as the template type
 Cbugui::deleter< T, H, false >Allows derived class to call a user defined on_Delete function.
 Cbugui::deleter< T, H, can_delete >Allows derived class to call a user defined on_Delete function
 Cbugui::deleter< T, H, false >Allows derived class to call a user defined on_Delete function.
 Cbugui::hardware_factory< T, Arg >Instantiate a hardware object specialised with a specific device
 Cbugui::in_message_t< Device, Component >Primary template for a Device and a Component that do not feature an in declaration
 Cbugui::in_message_t< Device, Component >Provides an alias for the Component
 Cbugui::init< T >Empty struct for devices that do not provide an initialisation command
 Cbugui::init< component< Device, class Device::buttons > >
 Cbugui::buttons< Device, Controller >Handles presses and enables painting on the device's labelled buttons
 Cbugui::init< component< Device, class Device::grid > >
 Cbugui::grid< Device, Controller >Handle presses and enables painting on the device's button grid
 Cbugui::init_t< Device, Component >Provides a type alias for the init nested type of the Component
 Cbugui::init_t< Device, Component >Provides a type alias for the init nested type of the Device, only if the Component does not also feature an init nested type
 Cbugui::midi< Component >Empty struct for devices that do not support MIDI
 Cbugui::midi< component< Device, class Device::buttons > >
 Cbugui::protocol< component< Device, class Device::buttons > >
 Cbugui::buttons< Device, Controller >Handles presses and enables painting on the device's labelled buttons
 Cbugui::midi< component< Device, class Device::clear > >
 Cbugui::protocol< component< Device, class Device::clear > >
 Cbugui::clear< Device >Enables calling the device's 'clear' command if it provides one
 Cbugui::midi< component< Device, class Device::grid > >
 Cbugui::protocol< component< Device, class Device::grid > >
 Cbugui::grid< Device, Controller >Handle presses and enables painting on the device's button grid
 Cbugui::midi< component< Device, class Device::init > >
 Cbugui::protocol< component< Device, class Device::init > >
 Cbugui::init< Device >Enables calling the device's 'init' command if it provides one
 Cbugui::out_message_t< Device, Component >Primary template for a Device and a Component that do not feature an out declaration
 Cbugui::out_message_t< Device, Component >Provides an alias for the Component
 Cbugui::palette< T >Provides access to the device's colour palette
 Cbugui::palette< T >Provides access to the device's colour palette and converts it from HEX to RGB values
 Cbugui::pointProvides the basics of 2D geometry. Primarily used as the top left and bottom right corners of the rectangle class
 Cbugui::protocol_t< Device, Component >Primary template providing a type alias for the Device only if the Component type does not feature a protocol declaration
 Cbugui::protocol_t< Device, Component >Provides a type alias for a Component featuring a prtocol declaration
 Cbugui::rectangleProvides the geometric structure of widgets
 Cbugui::base_widgetProvides the minimum required 2D widget functionalities
 Cbugui::base_container_widgetProvides functionalities for 2D widget that can hold other widgets as children
 Cbugui::painterAdds 2D information on top of a base_painter. The painter is used in user defined paint funcions to draw on the device. Meant to traverse the entire widget tree, each widget temporarly applies a coordinate offset to the painter, reflecting their relative position in the scene
 Cbugui::presserAdds 2D information on top of a button_presser. Meant to traverse the entire widget tree, each widget temporarly applies a coordinate offset to the paresser, reflecting their relative position in the scene
 Cbugui::sysex_formater< Component >Provides funcitons to retrieve the prefix size for a specific componenet's SYSEX messages. The SYSEX prefix is usually comprised of a specific device number and manufacturer's ID