Embedded Artistry Framework
Embedded Systems C++ Framework
Static Public Member Functions | List of all members
modm::Tolerance Class Reference

This class checks if values are within a certain tolerance. More...

#include <tolerance.hpp>

Static Public Member Functions

static constexpr int64_t absoluteError (uint32_t reference, uint32_t actual)
 
static constexpr float relativeError (uint32_t reference, uint32_t actual)
 
static constexpr bool isErrorInTolerance (float error, uint16_t tolerance)
 
static constexpr bool isValueInTolerance (uint32_t reference, uint32_t actual, uint16_t tolerance)
 
template<uint32_t reference, uint32_t actual, uint16_t tolerance>
static void assertValueInTolerance ()
 

Static Public Attributes

static constexpr uint16_t Exact = 0
 
static constexpr uint16_t ZeroPercent = 0
 
static constexpr uint16_t HalfPercent = 5
 
static constexpr uint16_t OnePercent = 10
 
static constexpr uint16_t TwoPercent = 20
 
static constexpr uint16_t FivePercent = 50
 
static constexpr uint16_t TenPercent = 100
 
static constexpr uint16_t TwentyPercent = 200
 
static constexpr uint16_t DontCare = 1000
 

Detailed Description

This class checks if values are within a certain tolerance.

This can be used to guarantee the quality of certain parameters, mostly baudrate or datarate.

Member Function Documentation

◆ absoluteError()

static constexpr int64_t modm::Tolerance::absoluteError ( uint32_t  reference,
uint32_t  actual 
)
inlinestatic

◆ assertValueInTolerance()

template<uint32_t reference, uint32_t actual, uint16_t tolerance>
static void modm::Tolerance::assertValueInTolerance ( )
inlinestatic

References isValueInTolerance().

◆ isErrorInTolerance()

static constexpr bool modm::Tolerance::isErrorInTolerance ( float  error,
uint16_t  tolerance 
)
inlinestatic

Referenced by isValueInTolerance().

◆ isValueInTolerance()

static constexpr bool modm::Tolerance::isValueInTolerance ( uint32_t  reference,
uint32_t  actual,
uint16_t  tolerance 
)
inlinestatic

◆ relativeError()

static constexpr float modm::Tolerance::relativeError ( uint32_t  reference,
uint32_t  actual 
)
inlinestatic

Referenced by isValueInTolerance().

Member Data Documentation

◆ DontCare

constexpr uint16_t modm::Tolerance::DontCare = 1000
static

◆ Exact

constexpr uint16_t modm::Tolerance::Exact = 0
static

Common tolerances in percent

◆ FivePercent

constexpr uint16_t modm::Tolerance::FivePercent = 50
static

◆ HalfPercent

constexpr uint16_t modm::Tolerance::HalfPercent = 5
static

◆ OnePercent

constexpr uint16_t modm::Tolerance::OnePercent = 10
static

◆ TenPercent

constexpr uint16_t modm::Tolerance::TenPercent = 100
static

◆ TwentyPercent

constexpr uint16_t modm::Tolerance::TwentyPercent = 200
static

◆ TwoPercent

constexpr uint16_t modm::Tolerance::TwoPercent = 20
static

◆ ZeroPercent

constexpr uint16_t modm::Tolerance::ZeroPercent = 0
static

The documentation for this class was generated from the following file: