X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=formats%2Fctf-text%2Fctf-text.c;h=f1ddbaf5e77b18f2f3855d9f7f2d23a708efe949;hp=1500d735c18c437be2fc9c0744498ce9ffd222e8;hb=ee126a93135987994d5621de6168f23236aea217;hpb=d335f0f72a86c7cdcc18e524c74b82a51ad01b16 diff --git a/formats/ctf-text/ctf-text.c b/formats/ctf-text/ctf-text.c index 1500d735..f1ddbaf5 100644 --- a/formats/ctf-text/ctf-text.c +++ b/formats/ctf-text/ctf-text.c @@ -3,7 +3,9 @@ * * CTF Text Format registration. * - * Copyright 2010, 2011 - Mathieu Desnoyers + * Copyright 2010-2011 EfficiOS Inc. and Linux Foundation + * + * Author: Mathieu Desnoyers * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -19,7 +21,7 @@ #include #include #include -#include +#include #include #include #include @@ -99,36 +101,11 @@ int ctf_text_write_event(struct stream_pos *ppos, struct ctf_stream_class *stream_class = stream->stream_class; int field_nr_saved; struct ctf_event *event_class; - struct ctf_file_event *event; - uint64_t id = 0; + struct ctf_stream_event *event; + uint64_t id; int ret; - /* print event header */ - if (stream->stream_event_header) { - struct definition_integer *integer_definition; - struct definition *variant; - - /* lookup event id */ - integer_definition = lookup_integer(&stream->stream_event_header->p, "id", FALSE); - if (integer_definition) { - id = integer_definition->value._unsigned; - } else { - struct definition_enum *enum_definition; - - enum_definition = lookup_enum(&stream->stream_event_header->p, "id", FALSE); - if (enum_definition) { - id = enum_definition->integer->value._unsigned; - } - } - - variant = lookup_variant(&stream->stream_event_header->p, "v"); - if (variant) { - integer_definition = lookup_integer(variant, "id", FALSE); - if (integer_definition) { - id = integer_definition->value._unsigned; - } - } - } + id = stream->event_id; if (id >= stream_class->events_by_id->len) { fprintf(stdout, "[error] Event id %" PRIu64 " is outside range.\n", id); @@ -145,7 +122,7 @@ int ctf_text_write_event(struct stream_pos *ppos, return -EINVAL; } - if (stream->timestamp) { + if (stream->has_timestamp) { if (pos->print_names) fprintf(pos->fp, "timestamp = "); else