Show loglevel information only with value
authorMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 1 Feb 2012 23:24:56 +0000 (18:24 -0500)
committerMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Wed, 1 Feb 2012 23:24:56 +0000 (18:24 -0500)
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
formats/ctf-text/ctf-text.c
formats/ctf/metadata/ctf-visitor-generate-io-struct.c
include/babeltrace/ctf-ir/metadata.h

index 83f0cf9c9ac1e8385e2ed29c2574ba0ab60a2e7e..150cf3a5c8124c9da3b59f7fd641493a9623362e 100644 (file)
@@ -282,16 +282,15 @@ int ctf_text_write_event(struct stream_pos *ppos,
                        fprintf(pos->fp, ", ");
                dom_print = 1;
        }
-       if ((opt_loglevel_field || opt_all_fields) && event_class->loglevel_identifier != 0) {
+       if ((opt_loglevel_field || opt_all_fields) && event_class->loglevel != -1) {
                set_field_names_print(pos, ITEM_HEADER);
                if (pos->print_names) {
                        fprintf(pos->fp, "loglevel = ");
                } else if (dom_print) {
                        fprintf(pos->fp, ":");
                }
-               fprintf(pos->fp, "%s (%lld)",
-                       g_quark_to_string(event_class->loglevel_identifier),
-                       (long long) event_class->loglevel_value);
+               fprintf(pos->fp, "(%d)",
+                       event_class->loglevel);
                if (pos->print_names)
                        fprintf(pos->fp, ", ");
                dom_print = 1;
index 31e55f42cb78653cf65fd820de107de4cc0907e5..6a8e1ab6a69e17107059d5a8919311eb5535df9b 100644 (file)
@@ -1649,36 +1649,22 @@ int ctf_event_declaration_visit(FILE *fd, int depth, struct ctf_node *node, stru
                                goto error;
                        }
                        event->fields_decl = container_of(declaration, struct declaration_struct, p);
-               } else if (!strcmp(left, "loglevel.identifier")) {
-                       char *right;
+               } else if (!strcmp(left, "loglevel")) {
+                       int64_t loglevel = -1;
 
-                       if (CTF_EVENT_FIELD_IS_SET(event, loglevel_identifier)) {
-                               fprintf(fd, "[error] %s: identifier already declared in event declaration\n", __func__);
-                               ret = -EPERM;
-                               goto error;
-                       }
-                       right = concatenate_unary_strings(&node->u.ctf_expression.right);
-                       if (!right) {
-                               fprintf(fd, "[error] %s: unexpected unary expression for event identifier\n", __func__);
-                               ret = -EINVAL;
-                               goto error;
-                       }
-                       event->loglevel_identifier = g_quark_from_string(right);
-                       g_free(right);
-                       CTF_EVENT_SET_FIELD(event, loglevel_identifier);
-               } else if (!strcmp(left, "loglevel.value")) {
-                       if (CTF_EVENT_FIELD_IS_SET(event, loglevel_value)) {
-                               fprintf(fd, "[error] %s: loglevel value already declared in event declaration\n", __func__);
+                       if (CTF_EVENT_FIELD_IS_SET(event, loglevel)) {
+                               fprintf(fd, "[error] %s: loglevel already declared in event declaration\n", __func__);
                                ret = -EPERM;
                                goto error;
                        }
-                       ret = get_unary_signed(&node->u.ctf_expression.right, &event->loglevel_value);
+                       ret = get_unary_signed(&node->u.ctf_expression.right, &loglevel);
+                       event->loglevel = (int) loglevel;
                        if (ret) {
-                               fprintf(fd, "[error] %s: unexpected unary expression for event loglevel value\n", __func__);
+                               fprintf(fd, "[error] %s: unexpected unary expression for event loglevel\n", __func__);
                                ret = -EINVAL;
                                goto error;
                        }
-                       CTF_EVENT_SET_FIELD(event, loglevel_value);
+                       CTF_EVENT_SET_FIELD(event, loglevel);
                } else {
                        fprintf(fd, "[warning] %s: attribute \"%s\" is unknown in event declaration.\n", __func__, left);
                        /* Fall-through after warning */
@@ -1705,6 +1691,7 @@ int ctf_event_visit(FILE *fd, int depth, struct ctf_node *node,
 
        event = g_new0(struct ctf_event, 1);
        event->declaration_scope = new_declaration_scope(parent_declaration_scope);
+       event->loglevel = -1;
        cds_list_for_each_entry(iter, &node->u.event.declaration_list, siblings) {
                ret = ctf_event_declaration_visit(fd, depth + 1, iter, event, trace);
                if (ret)
index ad40e03e75b3daa947f1b691d50f03cfb0be1964..dde51bb4d8f0a2efacd6d841e7814b3e57908faa 100644 (file)
@@ -212,15 +212,13 @@ struct ctf_event {
        GQuark name;
        uint64_t id;            /* Numeric identifier within the stream */
        uint64_t stream_id;
-       GQuark loglevel_identifier;
-       int64_t loglevel_value;
+       int loglevel;
 
        enum {                                  /* Fields populated mask */
                CTF_EVENT_name  =               (1 << 0),
                CTF_EVENT_id    =               (1 << 1),
                CTF_EVENT_stream_id =           (1 << 2),
-               CTF_EVENT_loglevel_identifier = (1 << 3),
-               CTF_EVENT_loglevel_value =      (1 << 4),
+               CTF_EVENT_loglevel =            (1 << 4),
        } field_mask;
 };
 
This page took 0.037773 seconds and 4 git commands to generate.