Sound Byte Libs 29c5ff3
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
Loading...
Searching...
No Matches
Classes | Namespaces | Variables
audio_requirements.hpp File Reference

Audio driver requirements validator. More...

#include "method_detection.hpp"
Include dependency graph for audio_requirements.hpp:

Go to the source code of this file.

Classes

class  sbl::validation::AudioDriverRequirements< AudioDriver >
 Audio 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 AudioDriver >
constexpr bool sbl::validation::audio_driver_valid = AudioDriverRequirements<AudioDriver>::validate()
 Helper to validate an audio driver implementation.
 

Detailed Description

Audio driver requirements validator.

Validates that audio drivers provide required functionality using the method detection system. This is the core audio contract enforcement for Sound Byte Libs drivers.

Audio Driver Contract

Every Sound Byte Libs audio driver MUST implement these methods:

Validation Usage

Add validation at the bottom of driver sai.hpp (or i2s.hpp, etc.):

static_assert(sbl::validation::audio_driver_valid<sbl::driver::Sai>,
"SAI driver missing required audio methods");
Audio driver requirements validator.
See also
method_detection.hpp

Definition in file audio_requirements.hpp.