2 * SPDX-License-Identifier: MIT
4 * Copyright 2016 Philippe Proulx <pproulx@efficios.com>
7 #ifndef BABELTRACE_PLUGINS_CTF_LTTNG_LIVE_DATA_STREAM_HPP
8 #define BABELTRACE_PLUGINS_CTF_LTTNG_LIVE_DATA_STREAM_HPP
12 #include "lttng-live.hpp"
14 enum lttng_live_iterator_status lttng_live_lazy_msg_init(struct lttng_live_session *session,
15 bt2::SelfMessageIterator selfMsgIter);
17 struct lttng_live_stream_iterator *
18 lttng_live_stream_iterator_create(struct lttng_live_session *session, uint64_t ctf_trace_id,
25 struct CtfLiveMedium : Medium
27 CtfLiveMedium(lttng_live_stream_iterator& liveStreamIter) :
28 _mLogger {liveStreamIter.logger, "PLUGIN/SRC.CTF.LTTNG-LIVE/CTF-LIVE-MEDIUM"},
29 _mLiveStreamIter(liveStreamIter)
33 Buf buf(bt2c::DataLen offset, bt2c::DataLen minSize) override;
36 bt2c::Logger _mLogger;
37 lttng_live_stream_iterator& _mLiveStreamIter;
39 bt2c::DataLen _mCurPktBegOffsetInStream = bt2c::DataLen::fromBits(0);
40 std::vector<uint8_t> _mBuf;
43 } /* namespace live */
47 lttng_live_iterator_status
48 lttng_live_stream_iterator_create_msg_iter(lttng_live_stream_iterator *liveStreamIter);
50 #endif /* BABELTRACE_PLUGINS_CTF_LTTNG_LIVE_DATA_STREAM_HPP */