41#include <StormByte/buffer/fifo.hxx>
77 friend class Backend::Pipeline::Packet;
117 std::optional<Property::Duration> pts,
118 std::optional<Property::Duration> dts,
119 std::optional<Property::Duration> duration,
123 std::uint64_t serial,
124 std::uint64_t part) noexcept;
161 inline const std::optional<Property::Duration>& Pts() const noexcept {
169 inline const std::optional<Property::Duration>&
Dts() const noexcept {
177 inline const std::optional<Property::Duration>&
Duration() const noexcept {
207 inline const std::optional<std::uint64_t>&
Serial() const noexcept {
217 inline std::uint64_t
Part() const noexcept {
251 inline const StormByte::Buffer::FIFO&
Payload() const noexcept {
259 inline StormByte::Buffer::FIFO&
Payload() noexcept {
267 inline const std::vector<SideData>&
Attachments() const noexcept {
268 return m_attachments;
276 return m_attachments;
313 void Bind(std::unique_ptr<Backend::Pipeline::Packet> backend)
noexcept;
318 void BecomeEmpty() noexcept;
326 Item::PointerType Clone() const override;
335 Item::PointerType Move() override;
338 std::optional<Property::Duration> m_pts;
339 std::optional<Property::Duration> m_dts;
340 std::optional<Property::Duration> m_duration;
342 std::vector<
SideData> m_attachments;
344 std::optional<std::uint64_t> m_serial;
345 std::uint64_t m_part;
346 std::unique_ptr<Backend::Pipeline::
Packet> m_backend;
#define STORMBYTE_MULTIMEDIA_PUBLIC
Imported symbol.
Definition visibility.h:47