#ifndef _RAMP_CTRL_H__
#define _RAMP_CTRL_H__
#include "os/os_task.h"
typedef struct {
	shark_timer_t timer;
	float start_point;
	float final_point;
	float interpolation;
	u32   duration_ms;
	u32   step_ms;
	float step_val;
}ramp_t;

void ramp_ctrl_init(ramp_t *ramp);
void ramp_clear(ramp_t *ramp);
void ramp_exc(ramp_t *ramp);
float ramp_get_target(ramp_t *ramp);
bool ramp_complete(ramp_t *ramp);
void ramp_set_target_duration(ramp_t *ramp, float start, float final, u32 duration_ms);
void ramp_set_points(ramp_t *ramp, float start, float target);
void ramp_set_target(ramp_t *ramp, float target) ;
void ramp_set_step_value(ramp_t *ramp, float step);
void ramp_set_step_time(ramp_t *ramp, u32 ms) ;
float ramp_get_interpolation(ramp_t *ramp);

#endif /* _RAMP_CTRL_H__ */

