move ltt-private.h from public directroy into private directroy
[lttv.git] / ltt / branches / poly / include / ltt / ltt.h
index 1da397f365d7f8e816fa87a363fd242008139764..ed86a5db8c394e5b5e89a535116ea56fbad546f5 100644 (file)
@@ -1,7 +1,8 @@
 #ifndef LTT_H
 #define LTT_H
 
-#include <ltt/LTTTypes.h>
+#include <ltt/time.h>
+#include <glib.h>
 
 /* A trace is associated with a tracing session run on a single, possibly
    multi-cpu, system. It is defined as a pathname to a directory containing
@@ -70,17 +71,25 @@ typedef unsigned long LttChecksum;
 
 
 /* Events are usually stored with the easily obtained CPU clock cycle count,
-   ltt_cycle_count. This can be converted to the real time value, ltt_time,
+   ltt_cycle_count. This can be converted to the real time value, LttTime,
    using linear interpolation between regularly sampled values (e.g. a few 
    times per second) of the real time clock with their corresponding 
    cycle count values. */
 
-typedef struct _LttTime {
-  unsigned long tv_sec;
-  unsigned long tv_nsec;
-} LttTime;
 
-typedef uint64_t LttCycleCount;
+typedef struct _TimeInterval{
+  LttTime startTime;
+  LttTime endTime;  
+} TimeInterval;
+
+
+typedef guint64 LttCycleCount;
+
+
+/* Event positions are used to seek within a tracefile based on
+   the block number and event position within the block. */
+
+typedef struct _LttEventPosition LttEventPosition;
 
 
 /* Differences between architectures include word sizes, endianess,
@@ -97,53 +106,10 @@ typedef enum _LttArchEndian
 { LTT_LITTLE_ENDIAN, LTT_BIG_ENDIAN
 } LttArchEndian;
 
-/* Time operation macros for LttTime (struct timespec) */
-/*  (T3 = T2 - T1) */
-#define TimeSub(T3, T2, T1) \
-do \
-{\
-  (T3).tv_sec  = (T2).tv_sec  - (T1).tv_sec;  \
-  (T3).tv_nsec = (T2).tv_nsec - (T1).tv_nsec; \
-  if((T3).tv_nsec < 0)\
-    {\
-    (T3).tv_sec--;\
-    (T3).tv_nsec += 1000000000;\
-    }\
-} while(0)
-
-/*  (T3 = T2 + T1) */
-#define TimeAdd(T3, T2, T1) \
-do \
-{\
-  (T3).tv_sec  = (T2).tv_sec  + (T1).tv_sec;  \
-  (T3).tv_nsec = (T2).tv_nsec + (T1).tv_nsec; \
-  if((T3).tv_nsec >= 1000000000)\
-    {\
-    (T3).tv_sec += (T3).tv_nsec / 1000000000;\
-    (T3).tv_nsec = (T3).tv_nsec % 1000000000;\
-    }\
-} while(0)
-
-/*  (T2 = T1 * FLOAT) */
-/* WARNING : use this multiplicator carefully : on 32 bits, multiplying
- * by more than 4 could overflow the tv_nsec.
- */
-#define TimeMul(T2, T1, FLOAT) \
-do \
-{\
-  (T2).tv_sec  = (T1).tv_sec  * (FLOAT);  \
-  (T2).tv_nsec = (T1).tv_nsec * (FLOAT);  \
-  if((T2).tv_nsec >= 1000000000)\
-    {\
-    (T2).tv_sec += (T2).tv_nsec / 1000000000;\
-    (T2).tv_nsec = (T2).tv_nsec % 1000000000;\
-    }\
-} while(0)
-
-
-
-
-#include <ltt/ltt-private.h>
+typedef enum _LttTypeEnum 
+{ LTT_INT, LTT_UINT, LTT_FLOAT, LTT_STRING, LTT_ENUM, LTT_ARRAY, 
+  LTT_SEQUENCE, LTT_STRUCT, LTT_UNION
+} LttTypeEnum;
 
  
 #endif // LTT_H
This page took 0.024751 seconds and 4 git commands to generate.