Files
radio/agc.h
T
jens a68283618d - AGC: added boundaries
- Tracker: forget max at each process for all rackers

git-svn-id: http://moon:8086/svn/software/trunk/libsrc/radio@1048 b431acfa-c32f-4a4a-93f1-934dc6c82436
2022-06-21 17:38:55 +00:00

42 lines
1.2 KiB
C
Executable File

// --------------------------------------------------------------
#ifndef AGC_H
#define AGC_H
#include <stdint.h>
#include "radio_types.h"
#include "statistics.h"
// --------------------------------------------------------------
// Types
// --------------------------------------------------------------
typedef struct _agc_t
{
radio_float_t w;
radio_float_t w_max;
radio_float_t w_min;
sl_minmax_t slMax;
} agc_t;
// --------------------------------------------------------------
#ifdef __cplusplus
extern "C" {
#endif
// --------------------------------------------------------------
// AGC
// --------------------------------------------------------------
// Scalar version
void AGC_Init(agc_t *pObj, uint32_t windowLength, radio_float_t w_init);
void AGC_Free(agc_t *pObj);
void AGC_Train(agc_t *pObj, radio_float_t e, radio_float_t mu);
void AGC_Process(agc_t *pObj, radio_float_t x, radio_float_t mu, radio_float_t target);
radio_float_t AGC_GetWeight(agc_t *pObj);
// --------------------------------------------------------------
#ifdef __cplusplus
}
#endif // __cplusplus
// --------------------------------------------------------------
#endif // AGC_H