31 lines
668 B
C
31 lines
668 B
C
#ifndef FX_OVERDRIVE_H
|
|
#define FX_OVERDRIVE_H
|
|
|
|
#include <stdbool.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef struct
|
|
{
|
|
bool enabled;
|
|
float drive; /* 0.0 a 1.0 : quantite de distorsion */
|
|
float tone; /* 0.0 (sombre) a 1.0 (brillant) : filtre passe-bas post-distorsion */
|
|
float level; /* gain de compensation en sortie */
|
|
} FxOverdriveParams;
|
|
|
|
typedef struct
|
|
{
|
|
float tone_lp_state;
|
|
} FxOverdriveState;
|
|
|
|
void FxOverdrive_Init(FxOverdriveState *state, FxOverdriveParams *params);
|
|
float FxOverdrive_Process(FxOverdriveState *state, const FxOverdriveParams *params, float input);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* FX_OVERDRIVE_H */
|