started updating for 1.2 release
[rrdtool.git] / src / rrd_format.h
index da0f1ba..1bd7073 100644 (file)
@@ -1,5 +1,5 @@
 /*****************************************************************************
- * RRDtool 1.0.33  Copyright Tobias Oetiker, 1997, 1998, 1999
+ * RRDtool 1.2rc6  Copyright by Tobi Oetiker, 1997-2005
  *****************************************************************************
  * rrd_format.h  RRD Database Format header
  *****************************************************************************/
  *****************************************************************************/
 
 #define RRD_COOKIE    "RRD"
-#define RRD_VERSION   "0002"
+/* #define RRD_VERSION   "0002" */
+/* changed because microsecond precision requires another field */
+#define RRD_VERSION   "0003"
 #define FLOAT_COOKIE  8.642135E130
 
-#if defined(WIN32)
-#define DNAN          ((double)fmod(0.0,0.0))    
-#define DINF         ((double)log(0.0))
-#else
-
-#define DNAN          ((double)(0.0/0.0))     /* we use a DNAN to
-                                              * represent the UNKNOWN
-                                              * */
-#define DINF          ((double)(1.0/0.0))     /* we use a DINF to
-                                              * represent a value at the upper or
-                                              * lower border of the graph ...
-                                              * */
-#endif
+#include "rrd_nan_inf.h"
 
 typedef union unival { 
     unsigned long u_cnt; 
@@ -260,6 +250,8 @@ typedef struct rra_def_t {
 
 typedef struct live_head_t {
     time_t           last_up;            /* when was rrd last updated */
+    long            last_up_usec;       /* micro seconds part of the
+                                           update timestamp. Always >= 0 */
 } live_head_t;