/* This file is part of the Linux Trace Toolkit trace reading library
* Copyright (C) 2003-2004 Michel Dagenais
+ * 2005 Mathieu Desnoyers
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
contained information (byte offsets) may vary with the architecture
associated to the trace. */
+#define NUM_FACILITIES 256
+#define FACILITIES_BITS 8
+#define AVG_EVENTS_PER_FACILITIES 10
+
typedef struct _LttTrace LttTrace;
typedef struct _LttTracefile LttTracefile;
/* Checksums are used to differentiate facilities which have the same name
but differ. */
-typedef unsigned long LttChecksum;
+//typedef guint32 LttChecksum;
/* Events are usually stored with the easily obtained CPU clock cycle count,
} LttArchEndian;
typedef enum _LttTypeEnum
-{ LTT_INT, LTT_UINT, LTT_FLOAT, LTT_STRING, LTT_ENUM, LTT_ARRAY,
- LTT_SEQUENCE, LTT_STRUCT, LTT_UNION
+{ LTT_INT_FIXED,
+ LTT_UINT_FIXED,
+ LTT_POINTER,
+ LTT_CHAR,
+ LTT_UCHAR,
+ LTT_SHORT,
+ LTT_USHORT,
+ LTT_INT,
+ LTT_UINT,
+ LTT_LONG,
+ LTT_ULONG,
+ LTT_SIZE_T,
+ LTT_SSIZE_T,
+ LTT_OFF_T,
+ LTT_FLOAT,
+ LTT_STRING,
+ LTT_ENUM,
+ LTT_ARRAY,
+ LTT_SEQUENCE,
+ LTT_STRUCT,
+ LTT_UNION,
+ LTT_NONE
} LttTypeEnum;
+
+
+/* Architecture types */
+#define LTT_ARCH_TYPE_I386 1
+#define LTT_ARCH_TYPE_PPC 2
+#define LTT_ARCH_TYPE_SH 3
+#define LTT_ARCH_TYPE_S390 4
+#define LTT_ARCH_TYPE_MIPS 5
+#define LTT_ARCH_TYPE_ARM 6
+#define LTT_ARCH_TYPE_PPC64 7
+#define LTT_ARCH_TYPE_X86_64 8
+#define LTT_ARCH_TYPE_C2 9
+#define LTT_ARCH_TYPE_POWERPC 10
+
+/* Standard definitions for variants */
+#define LTT_ARCH_VARIANT_NONE 0 /* Main architecture implementation */
+
#endif // LTT_H