gen, templates: generate default stream trace definitions
authorPhilippe Proulx <eeppeliteloop@gmail.com>
Wed, 6 Apr 2016 23:32:43 +0000 (19:32 -0400)
committerPhilippe Proulx <eeppeliteloop@gmail.com>
Wed, 6 Apr 2016 23:32:43 +0000 (19:32 -0400)
Signed-off-by: Philippe Proulx <eeppeliteloop@gmail.com>
barectf/gen.py
barectf/templates.py

index 6d136e1cd0160cf68866e022b2ec6b074e61f754..4b9bb9d64911927fd853887e6f53386a20d51180 100644 (file)
@@ -353,13 +353,30 @@ class CCodeGenerator:
             s_name = self._cfg.options.gen_default_stream_def
             default_stream_def = '#define _BARECTF_DEFAULT_STREAM {}'.format(s_name)
 
+        default_stream_trace_defs = ''
+        default_stream_name = self._cfg.metadata.default_stream_name
+
+        if default_stream_name is not None:
+            default_stream = self._cfg.metadata.streams[default_stream_name]
+            lines = []
+
+            for ev_name in default_stream.events.keys():
+                tmpl = templates._DEFINE_DEFAULT_STREAM_TRACE
+                define = tmpl.format(prefix=self._cfg.prefix,
+                                     sname=default_stream_name,
+                                     evname=ev_name)
+                lines.append(define)
+
+            default_stream_trace_defs = '\n'.join(lines)
+
         tmpl = templates._HEADER_BEGIN
         self._cg.add_lines(tmpl.format(prefix=self._cfg.prefix,
                                        ucprefix=self._cfg.prefix.upper(),
                                        bitfield_header_filename=bh_filename,
                                        version=barectf.__version__, date=dt,
                                        prefix_def=prefix_def,
-                                       default_stream_def=default_stream_def))
+                                       default_stream_def=default_stream_def,
+                                       default_stream_trace_defs=default_stream_trace_defs))
         self._cg.add_empty_line()
 
         # platform callbacks structure
index 1a242fd0534c0683e5019b8e125b39e61a25085a..52296684c50e172da741d29913373be4f7cb0601 100644 (file)
@@ -139,6 +139,9 @@ _FUNC_CLOSE_BODY_END = '''
 }'''
 
 
+_DEFINE_DEFAULT_STREAM_TRACE = '#define {prefix}trace_{evname} {prefix}{sname}_trace_{evname}'
+
+
 _FUNC_TRACE_PROTO_BEGIN = '''/* trace (stream "{sname}", event "{evname}") */
 void {prefix}{sname}_trace_{evname}(
        struct {prefix}{sname}_ctx *ctx'''
@@ -238,6 +241,7 @@ _HEADER_BEGIN = '''#ifndef _{ucprefix}H
 
 {prefix_def}
 {default_stream_def}
+{default_stream_trace_defs}
 
 struct {prefix}ctx;
 
This page took 0.026581 seconds and 4 git commands to generate.