1 #ifndef __GO_ACCUMULATOR_H
2 #define __GO_ACCUMULATOR_H
3 
4 #include <glib.h>
5 
6 G_BEGIN_DECLS
7 
8 gboolean go_accumulator_functional (void);
9 void *go_accumulator_start (void);
10 void go_accumulator_end (void *state);
11 
12 GOAccumulator *go_accumulator_new (void);
13 void go_accumulator_free (GOAccumulator *acc);
14 void go_accumulator_clear (GOAccumulator *acc);
15 void go_accumulator_add (GOAccumulator *acc, double x);
16 void go_accumulator_add_quad (GOAccumulator *acc, const GOQuad *x);
17 double go_accumulator_value (GOAccumulator *acc);
18 
19 
20 #ifdef GOFFICE_WITH_LONG_DOUBLE
21 
22 gboolean go_accumulator_functionall (void);
23 void *go_accumulator_startl (void);
24 void go_accumulator_endl (void *state);
25 
26 GOAccumulatorl *go_accumulator_newl (void);
27 void go_accumulator_freel (GOAccumulatorl *acc);
28 void go_accumulator_clearl (GOAccumulatorl *acc);
29 void go_accumulator_addl (GOAccumulatorl *acc, long double x);
30 void go_accumulator_add_quadl (GOAccumulatorl *acc, const GOQuadl *x);
31 long double go_accumulator_valuel (GOAccumulatorl *acc);
32 #endif
33 
34 G_END_DECLS
35 
36 #endif
37