3 #ifndef XJMUSIC_VALUE_UTILS_H
4 #define XJMUSIC_VALUE_UTILS_H
19 static std::regex isIntegerRgx;
21 static float entityPositionDecimalPlaces;
22 static float roundPositionMultiplier;
23 static std::random_device rd;
24 static std::mt19937 gen;
47 static float eitherOr(
float d1,
float d2);
55 static std::string
eitherOr(std::string s1, std::string s2);
63 static std::set<int>
dividedBy(
float divisor,
const std::set<int> &originals);
71 static float ratio(
float value,
float limit);
78 static bool isInteger(
const std::string &raw);
93 static std::string
k(
int value);
100 static std::string
randomFrom(std::vector<std::string> from);
109 static std::vector<std::string>
randomFrom(std::vector<std::string> from,
int num);
117 static long gcd(
long a,
long b);
125 static std::vector<int>
factors(
long target, std::vector<int> testFactors);
140 static int subDiv(
int numerator,
int denominator);
157 static float interpolate(
float floor,
float ceiling,
float position);
184 static std::vector<UUID>
withIdsRemoved(std::vector<UUID> fromIds,
int count);
199 static std::vector<std::string>
last(
int num, std::vector<std::string> list);
Definition: ValueUtils.h:17
static long SECONDS_PER_HOUR
Definition: ValueUtils.h:38
static std::set< int > dividedBy(float divisor, const std::set< int > &originals)
Definition: ValueUtils.cpp:53
static int subDiv(int numerator, int denominator)
Definition: ValueUtils.cpp:116
static float ratio(float value, float limit)
Definition: ValueUtils.cpp:62
static std::optional< UUID > getKeyOfHighestValue(const std::map< UUID, int > &map)
Definition: ValueUtils.cpp:144
static long HOURS_PER_DAY
Definition: ValueUtils.h:37
static bool isInteger(const std::string &raw)
Definition: ValueUtils.cpp:67
static void enforceMaxStereo(int value)
Definition: ValueUtils.cpp:138
static std::string k(int value)
Definition: ValueUtils.cpp:77
static std::vector< UUID > withIdsRemoved(std::vector< UUID > fromIds, int count)
Definition: ValueUtils.cpp:161
static long MILLIS_PER_SECOND
Definition: ValueUtils.h:27
static float MICROS_PER_MINUTE_FLOAT
Definition: ValueUtils.h:35
static long NANOS_PER_SECOND
Definition: ValueUtils.h:32
static int roundToNearest(int N, int value)
Definition: ValueUtils.cpp:156
static long SECONDS_PER_MINUTE
Definition: ValueUtils.h:33
static std::vector< std::string > last(int num, std::vector< std::string > list)
Definition: ValueUtils.cpp:178
static std::string randomFrom(std::vector< std::string > from)
Definition: ValueUtils.cpp:82
static long MINUTES_PER_HOUR
Definition: ValueUtils.h:36
static float limitDecimalPrecision(float value)
Definition: ValueUtils.cpp:72
static std::string emptyZero(int value)
Definition: ValueUtils.cpp:174
static int multipleFloor(int factor, float value)
Definition: ValueUtils.cpp:127
static long SECONDS_PER_DAY
Definition: ValueUtils.h:39
static long MICROS_PER_SECOND
Definition: ValueUtils.h:30
static long MICROS_PER_MINUTE
Definition: ValueUtils.h:34
static std::vector< int > factors(long target, std::vector< int > testFactors)
Definition: ValueUtils.cpp:107
static long NANOS_PER_MICRO
Definition: ValueUtils.h:29
static float MICROS_PER_SECOND_FLOAT
Definition: ValueUtils.h:31
static long MICROS_PER_MILLI
Definition: ValueUtils.h:28
static long gcd(long a, long b)
Definition: ValueUtils.cpp:97
static float interpolate(float floor, float ceiling, float position)
Definition: ValueUtils.cpp:133
static float eitherOr(float d1, float d2)
Definition: ValueUtils.cpp:37
Definition: ActiveAudio.h:11