Skip to content

File syn_rc_curve.h

File List > control > syn_rc_curve.h

Go to the documentation of this file

#ifndef SYN_RC_CURVE_H
#define SYN_RC_CURVE_H

#ifdef __cplusplus
extern "C" {
#endif

#include "syntropic/common/syn_defs.h"
#include "syntropic/util/syn_qmath.h"

#include <stdbool.h>
#include <stddef.h>
#include <stdint.h>

typedef struct {
    uint16_t
        deadband_us; 
    q16_t expo;      
    q16_t dual_rate; 
} SYN_RCCurve_Config;

uint16_t syn_rc_curve_apply(uint16_t input_us, const SYN_RCCurve_Config *config);

#ifdef __cplusplus
}
#endif

#endif /* SYN_RC_CURVE_H */