projects
/
lttv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix has_heartbeat : must be per tracefile for fast userspace tracing
[lttv.git]
/
ltt
/
branches
/
poly
/
ltt
/
type.c
diff --git
a/ltt/branches/poly/ltt/type.c
b/ltt/branches/poly/ltt/type.c
index d759f325d4a121bba3a78174671bce4bb10d093b..d396d21a0775b61a3612fad174f0ea85b2397ac7 100644
(file)
--- a/
ltt/branches/poly/ltt/type.c
+++ b/
ltt/branches/poly/ltt/type.c
@@
-33,13
+33,19
@@
static unsigned intSizes[] = {
sizeof(int8_t), sizeof(int16_t), sizeof(int32_t), sizeof(int64_t),
sizeof(short) };
sizeof(int8_t), sizeof(int16_t), sizeof(int32_t), sizeof(int64_t),
sizeof(short) };
+static unsigned floatSizes[] = {
+ 0, 0, sizeof(float), sizeof(double), 0, sizeof(float), sizeof(double) };
+
+
typedef enum _intSizesNames { SIZE_INT8, SIZE_INT16, SIZE_INT32,
SIZE_INT64, SIZE_SHORT, INT_SIZES_NUMBER }
intSizesNames;
typedef enum _intSizesNames { SIZE_INT8, SIZE_INT16, SIZE_INT32,
SIZE_INT64, SIZE_SHORT, INT_SIZES_NUMBER }
intSizesNames;
+static char * typeNames[] = {
+ "int_fixed", "uint_fixed", "pointer", "char", "uchar", "short", "ushort",
+ "int", "uint", "long", "ulong", "size_t", "ssize_t", "off_t", "float",
+ "string", "enum", "array", "sequence", "struct", "union", "none" };
-static unsigned floatSizes[] = {
- 0, 0, sizeof(float), sizeof(double), 0, sizeof(float), sizeof(double) };
#define FLOAT_SIZES_NUMBER 7
#define FLOAT_SIZES_NUMBER 7
@@
-100,6
+106,20
@@
guint8 ltt_eventtype_id(LttEventType *et)
return et->index;
}
return et->index;
}
+/*****************************************************************************
+ *Function name
+ * ltt_type_name : get the name of the type
+ *Input params
+ * t : a type
+ *Return value
+ * GQuark : the name of the type
+ ****************************************************************************/
+
+GQuark ltt_type_name(LttType *t)
+{
+ return g_quark_from_static_string(typeNames[t->type_class]);
+}
+
/*****************************************************************************
*Function name
* ltt_field_name : get the name of the field
/*****************************************************************************
*Function name
* ltt_field_name : get the name of the field
@@
-141,9
+161,9
@@
LttTypeEnum ltt_type_class(LttType *t)
* returns 0 if erroneous, and show a critical warning message.
****************************************************************************/
* returns 0 if erroneous, and show a critical warning message.
****************************************************************************/
-
size_
t ltt_type_size(LttTrace * trace, LttType *t)
+
guin
t ltt_type_size(LttTrace * trace, LttType *t)
{
{
-
size_
t size;
+
guin
t size;
switch(t->type_class) {
case LTT_INT_FIXED:
switch(t->type_class) {
case LTT_INT_FIXED:
@@
-231,7
+251,8
@@
unsigned ltt_type_element_number(LttType *t)
unsigned ret = 0;
if(likely(t->type_class == LTT_ENUM))
unsigned ret = 0;
if(likely(t->type_class == LTT_ENUM))
- ret = g_hash_table_size(t->enum_map);
+ // Permits non full enums ret = g_hash_table_size(t->enum_map);
+ ret = (unsigned)(t->highest_value - t->lowest_value);
return ret;
}
return ret;
}
This page took
0.023018 seconds
and
4
git commands to generate.