|
HART
0.1.0
High level Audio Regression and Testing
|
Handy functions and constants. More...
Macros | |
| #define | HART_DEFINE_GENERIC_REPRESENT(ClassName) |
| Defines a basic string representation of your class. | |
Functions | |
| template<typename NumericType > | |
| NumericType | clamp (const NumericType &value, const NumericType &low, const NumericType &high) |
std::clamp() replacement for C++11 | |
| template<typename SampleType > | |
| static SampleType | decibelsToRatio (SampleType valueDb) |
| Converts dB to linear value (ratio) | |
| template<typename SampleType > | |
| static SampleType | ratioToDecibels (SampleType valueLinear) |
| Converts linear value (ratio) to dB. | |
| template<typename SampleType > | |
| static SampleType | floatsEqual (SampleType a, SampleType b, SampleType epsilon=(SampleType) 1e-8) |
| Compares two floating point numbers within a given tolerance. | |
| template<typename SampleType > | |
| static SampleType | floatsNotEqual (SampleType a, SampleType b, SampleType epsilon=(SampleType) 1e-8) |
| Compares two floating point numbers within a given tolerance. | |
| template<typename SampleType > | |
| static size_t | roundToSizeT (SampleType x) |
Rounds a floating point value to a size_t value. | |
| template<typename SampleType > | |
| SampleType | wrapPhase (const SampleType phaseRadians) |
| Keeps phase in 0..twoPi range. | |
| static bool | isAbsolutePath (const std::string &path) |
| Checks if the provided file path is absolute. | |
| static std::string | toAbsolutePath (const std::string &path) |
Converts path to absolute, if it's relative @deials Relative paths are resolved based on a provided --data-root-path CLI argument | |
| template<typename KeyType , typename ValueType > | |
| static bool | contains (const std::unordered_map< KeyType, ValueType > &map, const KeyType &key) |
std::unordered_map::contains() replacement for C++11 | |
| template<typename ObjectType , typename... Args> | |
| std::unique_ptr< ObjectType > | make_unique (Args &&... args) |
std::make_unique() replacement for C++11 | |
Variables | |
| constexpr double | inf = std::numeric_limits<double>::infinity() |
| Infinity. | |
| constexpr double | oo = inf |
| Infinity. | |
| constexpr double | pi = 3.14159265358979323846 |
| pi | |
| constexpr double | twoPi = 2.0 * pi |
| 2 * pi | |
| constexpr double | halfPi = pi / 2.0 |
| pi / 2 | |
Handy functions and constants.
| #define HART_DEFINE_GENERIC_REPRESENT | ( | ClassName | ) |
Defines a basic string representation of your class.
If your class takes ctor arguments, it's strongly encouraged to make a proper implementation of represent(), so that you get more detailed test failure reports. See DSP::represent(), Macthers::represent(), Signal::represent() for the description.
Definition at line 145 of file hart_utils.hpp.
| NumericType clamp | ( | const NumericType & | value, |
| const NumericType & | low, | ||
| const NumericType & | high | ||
| ) |
std::clamp() replacement for C++11
Definition at line 37 of file hart_utils.hpp.
|
inlinestatic |
Converts dB to linear value (ratio)
| valueDb | Value in decibels |
Definition at line 46 of file hart_utils.hpp.
|
inlinestatic |
Converts linear value (ratio) to dB.
| valueLinear | Value in linear domain |
Definition at line 58 of file hart_utils.hpp.
|
inlinestatic |
Compares two floating point numbers within a given tolerance.
Definition at line 68 of file hart_utils.hpp.
|
inlinestatic |
Compares two floating point numbers within a given tolerance.
Definition at line 75 of file hart_utils.hpp.
|
inlinestatic |
Rounds a floating point value to a size_t value.
Definition at line 82 of file hart_utils.hpp.
| SampleType wrapPhase | ( | const SampleType | phaseRadians | ) |
Keeps phase in 0..twoPi range.
Definition at line 89 of file hart_utils.hpp.
Checks if the provided file path is absolute.
Definition at line 100 of file hart_utils.hpp.
Converts path to absolute, if it's relative @deials Relative paths are resolved based on a provided --data-root-path CLI argument
Definition at line 118 of file hart_utils.hpp.
|
inlinestatic |
std::unordered_map::contains() replacement for C++11
Definition at line 128 of file hart_utils.hpp.
| std::unique_ptr< ObjectType > make_unique | ( | Args &&... | args | ) |
std::make_unique() replacement for C++11
For C++11 compatibility only. If you're one C++14 or later, just use STL version.
Definition at line 136 of file hart_utils.hpp.
Infinity.
Definition at line 21 of file hart_utils.hpp.
Infinity.
Definition at line 24 of file hart_utils.hpp.
pi
Definition at line 27 of file hart_utils.hpp.
2 * pi
Definition at line 30 of file hart_utils.hpp.
pi / 2
Definition at line 33 of file hart_utils.hpp.