metadata 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. /* CTF 1.8 */
  2. typealias integer { size = 8; align = 8; signed = false; } := uint8_t;
  3. typealias integer { size = 16; align = 8; signed = false; } := uint16_t;
  4. typealias integer { size = 32; align = 8; signed = false; } := uint32_t;
  5. typealias integer { size = 64; align = 8; signed = false; } := uint64_t;
  6. trace {
  7. major = 1;
  8. minor = 3;
  9. uuid = "d18e6374-35a1-cd42-8e70-a9cffa712793";
  10. byte_order = le;
  11. packet.header := struct {
  12. uint32_t magic;
  13. uint8_t uuid[16];
  14. uint32_t stream_id;
  15. };
  16. };
  17. clock {
  18. name = monotonic;
  19. uuid = "84db105b-b3f4-4821-b662-efc51455106a";
  20. description = "Monotonic Clock";
  21. freq = 1000000; /* Frequency, in Hz */
  22. /* clock value offset from Epoch is: offset * (1/freq) */
  23. offset_s = 21600;
  24. };
  25. typealias integer {
  26. size = 32; align = 8; signed = false;
  27. map = clock.monotonic.value;
  28. } := uint32_clock_monotonic_t;
  29. typealias integer {
  30. size = 64; align = 8; signed = false;
  31. map = clock.monotonic.value;
  32. } := uint64_clock_monotonic_t;
  33. struct packet_context {
  34. uint64_clock_monotonic_t timestamp_begin;
  35. uint64_clock_monotonic_t timestamp_end;
  36. };
  37. struct event_header {
  38. enum : uint16_t { compact = 0 ... 65534, extended = 65535 } id;
  39. variant <id> {
  40. struct {
  41. uint32_t timestamp;
  42. } compact;
  43. struct {
  44. uint32_t id;
  45. uint64_t timestamp;
  46. } extended;
  47. } v;
  48. } align(8);
  49. stream {
  50. id = 0;
  51. event.header := struct event_header;
  52. packet.context := struct packet_context;
  53. };
  54. event {
  55. name = init;
  56. id = 0;
  57. stream_id = 0;
  58. };