2021-07-27 09:47:15 +02:00
|
|
|
//
|
|
|
|
// Created by mart on 7/25/21.
|
|
|
|
//
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include <cstdint>
|
2021-10-26 04:36:34 +02:00
|
|
|
#include "essential.h"
|
2021-07-27 09:47:15 +02:00
|
|
|
|
|
|
|
class Effect {
|
|
|
|
public:
|
|
|
|
Effect();
|
2022-08-23 00:26:44 +02:00
|
|
|
|
2021-07-27 09:47:15 +02:00
|
|
|
~Effect();
|
|
|
|
|
2022-08-23 00:26:44 +02:00
|
|
|
virtual int32_t command(uint32_t cmdCode, uint32_t cmdSize, void *pCmdData, uint32_t *replySize, void *pReplyData);
|
|
|
|
|
2021-07-27 09:47:15 +02:00
|
|
|
int32_t process(audio_buffer_s *in, audio_buffer_s *out);
|
2022-08-23 00:26:44 +02:00
|
|
|
|
|
|
|
int32_t configure(effect_config_t *config);
|
2021-07-27 09:47:15 +02:00
|
|
|
|
|
|
|
bool enabled;
|
|
|
|
bool configureOk;
|
|
|
|
uint32_t sampleRate;
|
2021-07-29 23:56:13 +02:00
|
|
|
effect_config_t config;
|
2021-07-27 09:47:15 +02:00
|
|
|
// Misc data here?
|
|
|
|
|
|
|
|
// TODO: Figure out what buffer is used for
|
2022-08-23 00:26:44 +02:00
|
|
|
float *buffer;
|
2021-07-27 09:47:15 +02:00
|
|
|
uint32_t bufferSize;
|
2022-08-23 00:26:44 +02:00
|
|
|
void *instance; // type: ProcessUnit_FX
|
2021-07-27 09:47:15 +02:00
|
|
|
};
|