Hi!
It seems as if there is no easy means to store extra data for the whole
life-time of the
rpn_calc loop.
The reason why I ask is because I am implementing the predictperc function,
which is
similar to predict and predictsigma but it gives the X percentile.
For this I need to order the data (depending on arguments maybe 50-60 floats),
which means allocating memory (the exactly same amount for every time rpn_calc
gets called)
to keep all those values sorted to find the correct percentile.
Unfortunately the way rrd_calc works, there is no data that is kept between
calculations,
to avoid the repeated create/teardowns of this structures...
Seems as if an "easy" way would be enhancing rpnp_t by adding this this:
void *extra; /* extra data used during setup */
void (*free_extra)(void *); /* a function used to free the extra structure...
* - if null, then a "normal free" is done */
and some code in rpnstack_free to call the "free" functionpointer with the
argument of extra.
(or free directly if the pointer is NULL)
So would something like the above be acceptable?
Thanks,
Martin
_______________________________________________
rrd-developers mailing list
[email protected]
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers