Add trace.packet.header definition scope
[ctf.git] / common-trace-format-proposal.txt
index f2f7e232b4b7b0a23513a74ac24490b8286664ce..7a3b61c7a6d6009704a84a703a6c8e8683e91905 100644 (file)
@@ -597,6 +597,17 @@ trace {
   packet.header := struct event_packet_header;
 };
 
+If a packet header lacks the "magic" number field, the trace endianness
+needs to be specified in the trace "endian" metadata attribute.
+
+If the trace_uuid is not present, no validation that the metadata
+actually corresponds to the stream is performed.
+
+If the stream_id packet header field is missing, the trace can only
+contain a single stream. Its "id" field can be left out, and its events
+don't need to declare a "stream_id" field.
+
+
 5.2 Event Packet Context Description
 
 Event packet context example. These are declared within the stream declaration
@@ -865,6 +876,7 @@ The target dynamic scope must be specified explicitly when referring to
 a field outside of the local static scope. The dynamic scope prefixes
 are thus:
 
+ - Trace Packet Header: <trace.packet.header. >,
  - Stream Packet Context: <stream.packet.context. >,
  - Event Header: <stream.event.header. >,
  - Stream Event Context: <stream.event.context. >,
@@ -894,6 +906,10 @@ Note that the trace endianness is usually extracted from the packet
 header magic number. The "endian" field is only needed when the magic
 number packet header field is not present.
 
+The stream "id" can be left out if there is only one stream in the
+trace. The event "id" field can be left out if there is only one event
+in a stream.
+
 trace {
   major = value;                               /* Trace format version */
   minor = value;
This page took 0.02246 seconds and 4 git commands to generate.