6#if defined(USE_VARIANTS) && __cplusplus >= 201703L
36 LOGI(
"addEffect -> Number of effects: %d", (
int)
size());
86template <
class GeneratorT>
97 for (
int j=0;
j<copy.
size();
j++){
100 LOGI(
"Number of effects %d -> %d", copy.
size(), this->size());
147 LOGI(
"addEffect -> Number of effects: %d",
size());
157 sample =
effects[
j]->process(sample);
264 size_t result_size = 0;
269 T* samples = (
T*) data;
271 for (
int count=0;count<frames;count++){
275 T sample = *samples++;
289 result_size +=
sizeof(
T);
304 size_t result_size = 0;
307 for (
int j=0;
j<frames;
j++){
313 result_size +=
sizeof(
T);
318 sample =
effects[
j]->process(sample);
335 if (
p_io==
nullptr)
return 0;
355 LOGI(
"addEffect -> Number of effects: %d", (
int)
size());
386#if defined(USE_VARIANTS) && __cplusplus >= 201703L || defined(DOXYGEN)
438 std::visit( [
this](
auto&& e) {
return e.setOutput(*
p_print);},
variant );
439 std::visit( [
this](
auto&& e) {
return e.setInput(*
p_io);},
variant );
440 return std::visit( [cfg](
auto&& e) {
return e.begin(
info);},
variant );
443 void end()
override {
444 std::visit( [](
auto&& e) {e.end();},
variant );
447 void setInput(
Stream &io){
451 void setStream(
Stream &io){
455 void setOutput(
Stream &io){
459 void setOutput(
Print &print){
467 size_t readBytes(
uint8_t *data,
size_t len)
override {
468 return std::visit( [data, len](
auto&& e) {
return e.readBytes(data, len);},
variant );
475 size_t write(
const uint8_t *data,
size_t len)
override {
476 return std::visit( [data, len](
auto&& e) {
return e.write(data, len);},
variant );
479 int available()
override {
480 return std::visit( [](
auto&& e) {
return e.available();},
variant );
483 int availableForWrite()
override {
484 return std::visit( [](
auto&& e) {
return e.availableForWrite();},
variant );
494 std::visit( [effect](
auto&& e) {e.addEffect(effect);},
variant );
499 std::visit( [](
auto&& e) {e.clear();},
variant );
504 return std::visit( [](
auto&& e) {
return e.size();},
variant );
509 return std::visit( [idx](
auto&& e) {
return e[idx];},
variant );
514 return std::visit( [
id](
auto&& e) {
return e.findEffect(
id);},
variant );
#define TRACEI()
Definition AudioLoggerIDF.h:32
#define TRACED()
Definition AudioLoggerIDF.h:31
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define LOGE(...)
Definition AudioLoggerIDF.h:30
#define assert(T)
Definition avr.h:10