X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=ltt%2Fbranches%2Fpoly%2Fltt%2Ftype.c;h=dc39d9d1d082b6dbf6b194fcba5064e5362e9e64;hb=3e177b6ee783950a3904355feef6046f29b4b042;hp=1f21f2c91b3e0360e2c54afded6f90764ff6df03;hpb=336900061b500618df3b160ac88209a6450352dc;p=lttv.git diff --git a/ltt/branches/poly/ltt/type.c b/ltt/branches/poly/ltt/type.c index 1f21f2c9..dc39d9d1 100644 --- a/ltt/branches/poly/ltt/type.c +++ b/ltt/branches/poly/ltt/type.c @@ -1,7 +1,8 @@ #include -#include #include "parser.h" +#include +#include "ltt-private.h" #include static unsigned intSizes[] = { @@ -93,6 +94,7 @@ unsigned ltt_eventtype_id(LttEventType *et) LttType *ltt_eventtype_type(LttEventType *et) { + if(!et->root_field) return NULL; return et->root_field->field_type; } @@ -241,7 +243,7 @@ LttType *ltt_type_member_type(LttType *t, unsigned i, char ** name) { if(t->type_class != LTT_STRUCT){*name == NULL; return NULL;} if(i >= t->element_number || i < 0 ){*name = NULL; return NULL;} - *name = t->element_name; + *name = t->element_type[i]->element_name; return t->element_type[i]; } @@ -311,6 +313,12 @@ LttField *ltt_field_member(LttField *f, unsigned i) LttType *ltt_field_type(LttField *f) { + if(!f)return NULL; return f->field_type; } +int ltt_field_size(LttField * f) +{ + if(!f)return 0; + return f->field_size; +}