X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fcommon%2Findex%2Fctf-index.h;h=5d6bd80f4cf11b32ed81574141e4ed7c5854c33a;hp=8755f1218ad3d114ac8f464051de42d7f92d23af;hb=f8f3885cc52af9d3c951da78989d6f4a25270411;hpb=de7e372efecc2cf51921f2ac5a657337e04a39d3 diff --git a/src/common/index/ctf-index.h b/src/common/index/ctf-index.h index 8755f1218..5d6bd80f4 100644 --- a/src/common/index/ctf-index.h +++ b/src/common/index/ctf-index.h @@ -60,4 +60,45 @@ struct ctf_packet_index { uint64_t packet_seq_num; /* packet sequence number */ } __attribute__((__packed__)); +static inline size_t ctf_packet_index_len(uint32_t major, uint32_t minor) +{ + if (major == 1) { + switch (minor) { + case 0: + return offsetof(struct ctf_packet_index, stream_id) + + member_sizeof(struct ctf_packet_index, + stream_id); + case 1: + return offsetof(struct ctf_packet_index, packet_seq_num) + + member_sizeof(struct ctf_packet_index, + packet_seq_num); + default: + abort(); + } + } + abort(); +} + +static inline uint32_t lttng_to_index_major(uint32_t lttng_major, + uint32_t lttng_minor) +{ + if (lttng_major == 2) { + return 1; + } + abort(); +} + +static inline uint32_t lttng_to_index_minor(uint32_t lttng_major, + uint32_t lttng_minor) +{ + if (lttng_major == 2) { + if (lttng_minor < 8) { + return 0; + } else { + return 1; + } + } + abort(); +} + #endif /* LTTNG_INDEX_H */