update endian -> byte_order
[ctf.git] / common-trace-format-proposal.txt
index f2f7e232b4b7b0a23513a74ac24490b8286664ce..f8ddcacc2811867dbcc2fdd9b99ed4d80bed9dca 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 "byte_order" 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. >,
@@ -891,14 +903,18 @@ TSDL Grammar. This section presents a rather ligher reading that
 consists in examples of TSDL metadata, with template values.
 
 Note that the trace endianness is usually extracted from the packet
-header magic number. The "endian" field is only needed when the magic
+header magic number. The "byte_order" 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;
   uuid = "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa";       /* Trace UUID */
-  endian = big OR little;                      /* Endianness (optional) */
+  byte_order = be OR le;                       /* Endianness (optional) */
   packet.header := struct {
     uint32_t magic;
     uint8_t  trace_uuid[16];
This page took 0.02268 seconds and 4 git commands to generate.