X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=src%2Frrd_hw.h;h=05a2b6bc1e5ca4ad872ce1e3bbbc3956c35cd6b2;hb=6e58e96d05b3300ff189d192d490da081d5fdffa;hp=e3b83cbca86880faa4085747626f7b35e35f1e22;hpb=3741f89bbcc7e8c9dbab7d76bbd2fe28249cfded;p=pkg-rrdtool.git diff --git a/src/rrd_hw.h b/src/rrd_hw.h index e3b83cb..05a2b6b 100644 --- a/src/rrd_hw.h +++ b/src/rrd_hw.h @@ -1,33 +1,65 @@ /***************************************************************************** - * RRDtool 1.2.28 Copyright by Tobi Oetiker, 1997-2008 + * RRDtool 1.4.8 Copyright by Tobi Oetiker, 1997-2013 ***************************************************************************** * rrd_hw.h : Support for Holt-Winters Smoothing/ Aberrant Behavior Detection *****************************************************************************/ /* functions implemented in rrd_hw.c */ -int update_aberrant_CF(rrd_t *rrd, rrd_value_t pdp_val, enum cf_en current_cf, - unsigned long cdp_idx, unsigned long rra_idx, unsigned long ds_idx, - unsigned short CDP_scratch_idx, rrd_value_t *seasonal_coef); -int create_hw_contingent_rras(rrd_t *rrd, unsigned short period, - unsigned long hashed_name); -int lookup_seasonal(rrd_t *rrd, unsigned long rra_idx, unsigned long rra_start, - FILE *rrd_file, unsigned long offset, rrd_value_t **seasonal_coef); -void erase_violations(rrd_t *rrd, unsigned long cdp_idx, unsigned long rra_idx); -int apply_smoother(rrd_t *rrd, unsigned long rra_idx, unsigned long rra_start, - FILE *rrd_file); -void reset_aberrant_coefficients(rrd_t *rrd, FILE *rrd_file, unsigned long ds_idx); -void init_hwpredict_cdp(cdp_prep_t *); -void init_seasonal_cdp(cdp_prep_t *); +int update_aberrant_CF( + rrd_t *rrd, + rrd_value_t pdp_val, + enum cf_en current_cf, + unsigned long cdp_idx, + unsigned long rra_idx, + unsigned long ds_idx, + unsigned short CDP_scratch_idx, + rrd_value_t *seasonal_coef); +int create_hw_contingent_rras( + rrd_t *rrd, + unsigned short period, + unsigned long hashed_name); +int lookup_seasonal( + rrd_t *rrd, + unsigned long rra_idx, + unsigned long rra_start, + rrd_file_t *rrd_file, + unsigned long offset, + rrd_value_t **seasonal_coef); +void erase_violations( + rrd_t *rrd, + unsigned long cdp_idx, + unsigned long rra_idx); +int apply_smoother( + rrd_t *rrd, + unsigned long rra_idx, + unsigned long rra_start, + rrd_file_t *rrd_file); +void reset_aberrant_coefficients( + rrd_t *rrd, + rrd_file_t *rrd_file, + unsigned long ds_idx); +void init_hwpredict_cdp( + cdp_prep_t *); +void init_seasonal_cdp( + cdp_prep_t *); + #define BURNIN_CYCLES 3 /* a standard fixed-capacity FIFO queue implementation */ typedef struct FIFOqueue { - rrd_value_t *queue; - int capacity, head, tail; + rrd_value_t *queue; + int capacity, head, tail; } FIFOqueue; -int queue_alloc(FIFOqueue **q,int capacity); -void queue_dealloc(FIFOqueue *q); -void queue_push(FIFOqueue *q, rrd_value_t value); -int queue_isempty(FIFOqueue *q); -rrd_value_t queue_pop(FIFOqueue *q); +int queue_alloc( + FIFOqueue **q, + int capacity); +void queue_dealloc( + FIFOqueue *q); +void queue_push( + FIFOqueue *q, + rrd_value_t value); +int queue_isempty( + FIFOqueue *q); +rrd_value_t queue_pop( + FIFOqueue *q);