25#ifndef SBL_VALIDATION_METHOD_DETECTION_HPP_
26#define SBL_VALIDATION_METHOD_DETECTION_HPP_
54template<
typename T,
typename =
void>
59 T::set_mode(std::declval<const sbl::GpioHandle&>(),
60 std::declval<sbl::core::hal::gpio::PinMode>()))>>
64template<
typename T,
typename =
void>
69 T::write(std::declval<const sbl::GpioHandle&>(),
70 std::declval<bool>()))>>
74template<
typename T,
typename =
void>
79 T::read(std::declval<const sbl::GpioHandle&>()))>>
83template<
typename T,
typename =
void>
88 T::toggle(std::declval<const sbl::GpioHandle&>()))>>
96template<
typename GpioDriver>
112template<
typename T,
typename =
void>
117 T::delay_ms(std::declval<uint32_t>()))>>
121template<
typename T,
typename =
void>
139template<
typename T,
typename =
void>
144 T::init(std::declval<const sbl::UartHandle&>()))>>
148template<
typename T,
typename =
void>
153 T::write_byte(std::declval<uint8_t>()))>>
157template<
typename T,
typename =
void>
162 T::write(std::declval<const uint8_t*>(),
163 std::declval<std::size_t>()))>>
180template<
typename T,
typename =
void>
188template<
typename T,
typename =
void>
193 T::configure_channel(std::declval<const sbl::AdcHandle&>(),
194 std::declval<sbl::core::hal::adc::SampleTime>()))>>
198template<
typename T,
typename =
void>
203 T::start_conversion(std::declval<const sbl::AdcHandle&>()))>>
207template<
typename T,
typename =
void>
215template<
typename T,
typename =
void>
223template<
typename T,
typename =
void>
235template<
typename AdcDriver>
ADC handle type for hardware abstraction.
GPIO handle type for hardware abstraction.
ADC common types and enumerations.
GPIO common types and enumerations.
Root namespace for all Sound Byte Libs functionality.
Combined ADC driver interface check.
static constexpr bool value
Combined GPIO driver interface check.
static constexpr bool value
ADC Driver Method Detection.
GPIO Driver Method Detection (Handle-First API)
Timer Driver Method Detection.
UART Driver Method Detection.
UART handle type for hardware abstraction.