mirror of
https://github.com/Ralim/IronOS.git
synced 2025-02-26 07:53:55 +00:00
Access to the inactive union members is an undefined behavior. `column.whole = (1 << height) - 1;` -- 'whole' is active member here, `fillArea(OLED_WIDTH - 1, 0, 1, 8, column.strips[0]);` -- but the 'strips' member accessed here. Same issue: https://gitlab.com/libeigen/eigen/-/issues/2898
Drivers
Drivers are the classes used to represent physical hardware on the board in a more abstract way, that are more complex than just an IO
- OLED Display
- Accelerometers
- Button handling logic
- Tip thermo response modelling
All drivers should be written with minimal hardware assumptions, and defer hardware related logic to the BSP folder where possible