summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 7fdde89)
raw | patch | inline | side by side (parent: 7fdde89)
author | oetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa> | |
Thu, 15 Mar 2001 19:43:04 +0000 (19:43 +0000) | ||
committer | oetiker <oetiker@a5681a0c-68f1-0310-ab6d-d61299d08faa> | |
Thu, 15 Mar 2001 19:43:04 +0000 (19:43 +0000) |
PROJECTS | [new file with mode: 0644] | patch | blob |
diff --git a/PROJECTS b/PROJECTS
--- /dev/null
+++ b/PROJECTS
@@ -0,0 +1,46 @@
+NEW RRD DATAFORMAT with Accessor Functions
+==========================================
+
+Interested:
+
+Tobias Oetiker <oetiker@ee.ethz.ch>
+Jake Brutlag <jakeb@microsoft.com>
+- updating rrd_update to use accessor fks
+Karl Schilke <karl_schilke@eli.net>
+- changeing data access to mmap
+
+
+Plan:
+
+Encapsulating access to the RRD files through
+special accessor functions which provide
+access to the datastructures within the
+RRDfiles.
+
+pseudo code by Jake
+
+For example, here is a current code block from rrd_update.c:
+
+ for (i=0;i<rrd.stat_head->ds_cnt;i++) {
+ if(isnan(pdp_new[i]))
+ rrd.pdp_prep[i].scratch[PDP_unkn_sec_cnt].u_cnt += interval;
+ else
+ rrd.pdp_prep[i].scratch[PDP_val].u_val+= pdp_new[i];
+ }
+
+This could read:
+
+ for (i=0 ; i < getDSCount(&rrd) ;i++) {
+ if(isnan(pdp_new[i])) {
+ temp = getPDPParam(&rrd, i, PDP_unkn_sec_cnt);
+ temp.u_cnt += interval;
+ setPDPParam(&rrd, i, PDP_unkn_sec_cnt, temp);
+ } else {
+ temp = getPDPParam(&rrd, i, PDP_val);
+ temp.u_val += pdp_new[i];
+ setPDPParam(&rrd, i, PDP_val, temp);
+ }
+ }
+
+
+