17#ifndef DAF_DETAILS_HPP_INCLUDED
18#define DAF_DETAILS_HPP_INCLUDED
20#include "extra/String.hpp"
99DAF_DEPRECATED_BY(
"kParameterIsAutomatable")
257 static constexpr const char bypass[] =
"daf_bypass";
262 static constexpr const char reset[] =
"daf_reset";
399 else if (value >
max)
420 const float normValue = (value -
min) / (
max -
min);
422 if (normValue <= 0.0f)
424 if (normValue >= 1.0f)
435 const double normValue = (value -
min) / (
max -
min);
437 if (normValue <= 0.0)
439 if (normValue >= 1.0)
454 const float normValue = (value -
min) / (
max -
min);
456 if (normValue <= 0.0f)
458 if (normValue >= 1.0f)
475 const double normValue = (value -
min) / (
max -
min);
477 if (normValue <= 0.0)
479 if (normValue >= 1.0)
703 Parameter(uint32_t h,
const char* n,
const char* s,
const char* u,
float def,
float min,
float max) noexcept
716#ifdef DAF_PROPER_CPP11_SUPPORT
721 Parameter(uint32_t h,
const char* n,
const char* s,
const char* u,
float def,
float min,
float max,
794 other.enumValues.deleteLater =
false;
813 DAF_SAFE_ASSERT_RETURN(other.enumValues.values ==
nullptr || !other.enumValues.deleteLater, *
this);
904 #ifdef __MOD_DEVICES__
963 const uint8_t* dataExt;
static constexpr const uint32_t kCVPortIsOptional
Definition DafDetails.hpp:77
static constexpr const uint32_t kCVPortHasPositiveUnipolarRange
Definition DafDetails.hpp:63
static constexpr const uint32_t kCVPortHasBipolarRange
Definition DafDetails.hpp:51
static constexpr const uint32_t kCVPortHasScaledRange
Definition DafDetails.hpp:71
static constexpr const uint32_t kAudioPortIsSidechain
Definition DafDetails.hpp:45
static constexpr const uint32_t kCVPortHasNegativeUnipolarRange
Definition DafDetails.hpp:57
static constexpr const uint32_t kAudioPortIsCV
Definition DafDetails.hpp:38
PredefinedPortGroupsIds
Definition DafDetails.hpp:279
ParameterDesignation
Definition DafDetails.hpp:229
@ kPortGroupMono
Definition DafDetails.hpp:288
@ kPortGroupNone
Definition DafDetails.hpp:283
@ kPortGroupStereo
Definition DafDetails.hpp:294
@ kParameterDesignationBypass
Definition DafDetails.hpp:239
@ kParameterDesignationReset
Definition DafDetails.hpp:246
@ kParameterDesignationNull
Definition DafDetails.hpp:233
#define END_NAMESPACE_DAF
Definition DafInfo.hpp:996
#define START_NAMESPACE_DAF
Definition DafInfo.hpp:990
static constexpr const uint32_t kParameterIsOutput
Definition DafDetails.hpp:129
static constexpr const uint32_t kParameterIsHidden
Definition DafDetails.hpp:145
static constexpr const uint32_t kParameterIsAutomable
Definition DafDetails.hpp:100
static constexpr const uint32_t kParameterIsInteger
Definition DafDetails.hpp:111
static constexpr const uint32_t kParameterIsTrigger
Definition DafDetails.hpp:138
static constexpr const uint32_t kParameterIsLogarithmic
Definition DafDetails.hpp:116
static constexpr const uint32_t kParameterIsBoolean
Definition DafDetails.hpp:106
static constexpr const uint32_t kParameterIsAutomatable
Definition DafDetails.hpp:96
static constexpr const uint32_t kStateIsOnlyForDSP
Definition DafDetails.hpp:185
static constexpr const uint32_t kStateIsOnlyForUI
Definition DafDetails.hpp:191
static constexpr const uint32_t kStateIsHostReadable
Definition DafDetails.hpp:163
static constexpr const uint32_t kStateIsFilenamePath
Definition DafDetails.hpp:175
static constexpr const uint32_t kStateIsParameterSnapshot
Definition DafDetails.hpp:200
static constexpr const uint32_t kStateIsBase64Blob
Definition DafDetails.hpp:180
static constexpr const uint32_t kStateIsHostWritable
Definition DafDetails.hpp:169
static constexpr const uint32_t kStateIsRequired
Definition DafDetails.hpp:207
Definition DafDetails.hpp:253
static constexpr const char bypass[]
Definition DafDetails.hpp:257
static constexpr const char bypass_lv2[]
Definition DafDetails.hpp:267
static constexpr const char reset[]
Definition DafDetails.hpp:262
uint32_t groupId
Definition DafDetails.hpp:333
AudioPort() noexcept
Definition DafDetails.hpp:338
String name
Definition DafDetails.hpp:315
String symbol
Definition DafDetails.hpp:323
uint32_t hints
Definition DafDetails.hpp:308
Definition DafDetails.hpp:939
uint32_t size
Definition DafDetails.hpp:953
static constexpr const uint32_t kDataSize
Definition DafDetails.hpp:943
uint8_t data[kDataSize]
Definition DafDetails.hpp:962
uint32_t frame
Definition DafDetails.hpp:948
Definition DafDetails.hpp:518
ParameterEnumerationValue() noexcept
Definition DafDetails.hpp:532
float value
Definition DafDetails.hpp:522
ParameterEnumerationValue(float v, const char *l) noexcept
Definition DafDetails.hpp:539
String label
Definition DafDetails.hpp:527
Definition DafDetails.hpp:548
bool restrictedMode
Definition DafDetails.hpp:559
constexpr ParameterEnumerationValues(uint8_t c, bool r, ParameterEnumerationValue *v) noexcept
Definition DafDetails.hpp:588
constexpr ParameterEnumerationValues() noexcept
Definition DafDetails.hpp:577
bool deleteLater
Definition DafDetails.hpp:572
ParameterEnumerationValue * values
Definition DafDetails.hpp:566
uint8_t count
Definition DafDetails.hpp:552
Definition DafDetails.hpp:352
float getUnnormalizedValue(const float value) const noexcept
Definition DafDetails.hpp:488
float getFixedAndNormalizedValue(const float value) const noexcept
Definition DafDetails.hpp:447
void fixDefault() noexcept
Definition DafDetails.hpp:387
float max
Definition DafDetails.hpp:366
void fixValue(float &value) const noexcept
Definition DafDetails.hpp:395
float getNormalizedValue(const float value) const noexcept
Definition DafDetails.hpp:418
float min
Definition DafDetails.hpp:361
constexpr ParameterRanges(const float df, const float mn, const float mx) noexcept
Definition DafDetails.hpp:379
double getFixedAndNormalizedValue(const double value) const noexcept
Definition DafDetails.hpp:468
float getFixedValue(const float value) const noexcept
Definition DafDetails.hpp:406
constexpr ParameterRanges() noexcept
Definition DafDetails.hpp:371
float def
Definition DafDetails.hpp:356
double getNormalizedValue(const double &value) const noexcept
Definition DafDetails.hpp:433
double getUnnormalizedValue(const double value) const noexcept
Definition DafDetails.hpp:502
Definition DafDetails.hpp:607
Parameter() noexcept
Definition DafDetails.hpp:687
String shortName
Definition DafDetails.hpp:626
ParameterRanges ranges
Definition DafDetails.hpp:653
String unit
Definition DafDetails.hpp:641
uint32_t hints
Definition DafDetails.hpp:612
ParameterDesignation designation
Definition DafDetails.hpp:664
String symbol
Definition DafDetails.hpp:634
uint8_t midiCC
Definition DafDetails.hpp:672
String description
Definition DafDetails.hpp:647
uint32_t groupId
Definition DafDetails.hpp:682
ParameterEnumerationValues enumValues
Definition DafDetails.hpp:659
void initDesignation(ParameterDesignation d) noexcept
Definition DafDetails.hpp:739
String name
Definition DafDetails.hpp:619
Parameter(uint32_t h, const char *n, const char *s, const char *u, float def, float min, float max) noexcept
Definition DafDetails.hpp:703
Definition DafDetails.hpp:845
String symbol
Definition DafDetails.hpp:859
String name
Definition DafDetails.hpp:851
String key
Definition DafDetails.hpp:885
State() noexcept
Definition DafDetails.hpp:928
String label
Definition DafDetails.hpp:896
uint32_t hints
Definition DafDetails.hpp:877
String defaultValue
Definition DafDetails.hpp:891
String description
Definition DafDetails.hpp:902
float beatType
Definition DafDetails.hpp:1037
bool valid
Definition DafDetails.hpp:1000
float beatsPerBar
Definition DafDetails.hpp:1032
double barStartTick
Definition DafDetails.hpp:1027
double ticksPerBeat
Definition DafDetails.hpp:1043
BarBeatTick() noexcept
Definition DafDetails.hpp:1053
int32_t bar
Definition DafDetails.hpp:1007
void clear() noexcept
Definition DafDetails.hpp:1067
double tick
Definition DafDetails.hpp:1022
int32_t beat
Definition DafDetails.hpp:1014
double beatsPerMinute
Definition DafDetails.hpp:1048
bool playing
Definition DafDetails.hpp:977
uint64_t frame
Definition DafDetails.hpp:984
void clear() noexcept
Definition DafDetails.hpp:1093
bool bpmValid
Definition DafDetails.hpp:990
TimePosition() noexcept
Definition DafDetails.hpp:1084