00001 #ifndef __PERCPRED_H__ 00002 #define __PERCPRED_H__ 00003 00004 #include <linux/aquosa/qmgr_base.h> 00005 #include <linux/aquosa/qos_queue.h> 00006 00017 typedef struct percpred_params_struct { 00018 qmgr_pred_params_t base; 00019 int sample_size; 00020 int discarded; 00021 } percpred_params_t; 00022 00024 typedef struct percpred_struct { 00025 qmgr_pred_t base; 00026 qos_queue_t queue; 00027 int sample_size; 00028 qres_time_t sum; 00029 int discarded; 00030 } percpred_t; 00031 00033 qos_rv percpred_register(void); 00034 00042 qos_rv percpred_init(void *self, void *params); 00043 00045 qos_rv percpred_final(qmgr_pred_t *self); 00046 00054 qos_rv percpred_add_sample(qmgr_pred_t *pred, qres_time_t new_sample); 00055 00056 qres_time_t percpred_get_exp_value(qmgr_pred_t *pred); 00057 00060 #endif