new loadbalancer
This commit is contained in:
30
components/loadbalancer/include/input_filter.h
Normal file
30
components/loadbalancer/include/input_filter.h
Normal file
@@ -0,0 +1,30 @@
|
||||
#pragma once
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
float alpha; ///< Fator de suavização (0.0 a 1.0)
|
||||
float value; ///< Último valor filtrado
|
||||
int initialized; ///< Flag de inicialização
|
||||
} input_filter_t;
|
||||
|
||||
/**
|
||||
* @brief Inicializa o filtro com o fator alpha desejado.
|
||||
* @param filter Ponteiro para a estrutura do filtro
|
||||
* @param alpha Valor entre 0.0 (mais lento) e 1.0 (sem filtro)
|
||||
*/
|
||||
void input_filter_init(input_filter_t *filter, float alpha);
|
||||
|
||||
/**
|
||||
* @brief Atualiza o valor filtrado com uma nova entrada.
|
||||
* @param filter Ponteiro para o filtro
|
||||
* @param input Valor bruto
|
||||
* @return Valor suavizado
|
||||
*/
|
||||
float input_filter_update(input_filter_t *filter, float input);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
0
components/loadbalancer/include/loadbalancer.h
Normal file → Executable file
0
components/loadbalancer/include/loadbalancer.h
Normal file → Executable file
Reference in New Issue
Block a user