|
Sound Byte Libs 1ee2ca6
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
|
GPIO driver requirements validator. More...
#include "method_detection.hpp"Go to the source code of this file.
Classes | |
| class | sbl::validation::GpioDriverRequirements< GpioDriver > |
| GPIO driver requirements validator. More... | |
Namespaces | |
| namespace | sbl |
| Root namespace for all Sound Byte Libs functionality. | |
| namespace | sbl::validation |
| Compile-time validation infrastructure. | |
Variables | |
| template<typename GpioDriver > | |
| constexpr bool | sbl::validation::gpio_driver_valid = GpioDriverRequirements<GpioDriver>::validate() |
| Helper to validate a GPIO driver implementation. | |
GPIO driver requirements validator.
Validates that GPIO drivers provide required functionality using the method detection system. This is the core GPIO contract enforcement for Sound Byte Libs drivers.
Every Sound Byte Libs GPIO driver MUST implement these methods:
set_mode(const GpioHandle&, PinMode) - Configure pin modewrite(const GpioHandle&, bool) - Write logical value (handles active_low)read(const GpioHandle&) -> bool - Read logical value (handles active_low)toggle(const GpioHandle&) - Toggle pin outputAdd validation at the bottom of driver gpio.hpp:
Definition in file gpio_requirements.hpp.