Skip to content

Commit b584305

Browse files
committed
Prepare for 1.2.6
1 parent 513bb94 commit b584305

File tree

5 files changed

+33
-14
lines changed

5 files changed

+33
-14
lines changed

plugins/plugs/mini-curve-display/mini-curve-display.cc

+25-9
Original file line numberDiff line numberDiff line change
@@ -90,23 +90,35 @@ namespace clap {
9090
}
9191

9292
template <bool IsDynamic>
93-
bool MiniCurveDisplay<IsDynamic>::miniCurveDisplayRender(uint16_t *data,
94-
uint32_t data_size) noexcept {
93+
uint32_t
94+
MiniCurveDisplay<IsDynamic>::miniCurveDisplayRender(clap_mini_display_curve_data_t *data,
95+
uint32_t data_size) noexcept {
96+
if (data_size == 0)
97+
return 0;
98+
9599
double phaseOffset = 0;
96100
if (IsDynamic) {
97101
const auto now = std::chrono::system_clock::now();
98-
const auto d = now.time_since_epoch();
99102
const auto ms = std::chrono::duration_cast<std::chrono::milliseconds>(
100103
now.time_since_epoch() % std::chrono::seconds(4));
101104
phaseOffset = 2.0 * M_PI * ms.count() / 4000.0;
102105
}
103106

107+
data[0].curve_kind = CLAP_MINI_CURVE_DISPLAY_CURVE_KIND_TIME_SERIES;
108+
109+
if (data_size >= 2)
110+
data[1].curve_kind = CLAP_MINI_CURVE_DISPLAY_CURVE_KIND_TIME_SERIES;
111+
104112
const double k = (2.0 * M_PI) / data_size;
105-
for (uint32_t i = 0; i < data_size; ++i) {
106-
const double phase = i * k + phaseOffset;
107-
data[i] = (std::sin(phase) + 1) * std::numeric_limits<uint16_t>::max() / 2;
113+
for (uint32_t j = 0; j < data_size; ++j) {
114+
const double phase = j * k + phaseOffset;
115+
data[0].values[j] = (std::sin(phase) + 1) * std::numeric_limits<uint16_t>::max() / 2;
116+
117+
if (data_size >= 2)
118+
data[1].values[j] = (std::cos(phase) + 1) * std::numeric_limits<uint16_t>::max() / 2;
108119
}
109-
return true;
120+
121+
return std::min<uint32_t>(2, data_size);
110122
}
111123

112124
template <bool IsDynamic>
@@ -115,15 +127,19 @@ namespace clap {
115127
}
116128

117129
template <bool IsDynamic>
118-
bool MiniCurveDisplay<IsDynamic>::miniCurveDisplayGetAxisName(char *x_name,
130+
bool MiniCurveDisplay<IsDynamic>::miniCurveDisplayGetAxisName(uint32_t curve_index,
131+
char *x_name,
119132
char *y_name,
120133
uint32_t name_capacity) noexcept {
121134
if (x_name)
122135
snprintf(x_name, name_capacity, "x");
123136
if (y_name)
124-
snprintf(y_name, name_capacity, "x");
137+
snprintf(y_name, name_capacity, "y");
125138
return true;
126139
}
140+
141+
template <bool IsDynamic>
142+
uint32_t MiniCurveDisplay<IsDynamic>::miniCurveDisplayGetCurveCount() const noexcept { return 2; }
127143
} // namespace clap
128144

129145
template class clap::MiniCurveDisplay<false>;

plugins/plugs/mini-curve-display/mini-curve-display.hh

+5-2
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,12 @@ namespace clap {
2020
clap_process_status processBackup(const clap_process *process) noexcept;
2121

2222
bool implementsMiniCurveDisplay() const noexcept override;
23-
bool miniCurveDisplayRender(uint16_t *data, uint32_t data_size) noexcept override;
23+
uint32_t miniCurveDisplayGetCurveCount() const noexcept override;
24+
uint32_t miniCurveDisplayRender(clap_mini_display_curve_data_t *data,
25+
uint32_t data_size) noexcept override;
2426
void miniCurveDisplaySetObserved(bool is_observed) noexcept override;
25-
bool miniCurveDisplayGetAxisName(char *x_name,
27+
bool miniCurveDisplayGetAxisName(uint32_t curve_index,
28+
char *x_name,
2629
char *y_name,
2730
uint32_t name_capacity) noexcept override;
2831

vcpkg

Submodule vcpkg updated 1471 files

0 commit comments

Comments
 (0)