// automatically generated by the FlatBuffers compiler, do not modify #ifndef FLATBUFFERS_GENERATED_BEXSTREAM_BEX_WIRE_H_ #define FLATBUFFERS_GENERATED_BEXSTREAM_BEX_WIRE_H_ #include "flatbuffers/flatbuffers.h" // Ensure the included flatbuffers.h is the same version as when this file was // generated, otherwise it may not be compatible. static_assert(FLATBUFFERS_VERSION_MAJOR == 25 && FLATBUFFERS_VERSION_MINOR == 12 && FLATBUFFERS_VERSION_REVISION == 19, "Non-compatible flatbuffers version included"); #include "bex_common_generated.h" namespace bex { namespace wire { struct VideoResolution; struct VideoResolutionBuilder; struct VideoTrack; struct VideoTrackBuilder; struct SubtitleTrack; struct SubtitleTrackBuilder; struct Server; struct ServerBuilder; struct StreamSource; struct StreamSourceBuilder; struct VideoResolution FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { typedef VideoResolutionBuilder Builder; enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_WIDTH = 4, VT_HEIGHT = 6, VT_HDR = 8, VT_LABEL = 10 }; uint32_t width() const { return GetField(VT_WIDTH, 0); } uint32_t height() const { return GetField(VT_HEIGHT, 0); } bool hdr() const { return GetField(VT_HDR, 0) != 0; } const ::flatbuffers::String *label() const { return GetPointer(VT_LABEL); } template bool Verify(::flatbuffers::VerifierTemplate &verifier) const { return VerifyTableStart(verifier) && VerifyField(verifier, VT_WIDTH, 4) && VerifyField(verifier, VT_HEIGHT, 4) && VerifyField(verifier, VT_HDR, 1) && VerifyOffset(verifier, VT_LABEL) && verifier.VerifyString(label()) && verifier.EndTable(); } }; struct VideoResolutionBuilder { typedef VideoResolution Table; ::flatbuffers::FlatBufferBuilder &fbb_; ::flatbuffers::uoffset_t start_; void add_width(uint32_t width) { fbb_.AddElement(VideoResolution::VT_WIDTH, width, 0); } void add_height(uint32_t height) { fbb_.AddElement(VideoResolution::VT_HEIGHT, height, 0); } void add_hdr(bool hdr) { fbb_.AddElement(VideoResolution::VT_HDR, static_cast(hdr), 0); } void add_label(::flatbuffers::Offset<::flatbuffers::String> label) { fbb_.AddOffset(VideoResolution::VT_LABEL, label); } explicit VideoResolutionBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ::flatbuffers::Offset Finish() { const auto end = fbb_.EndTable(start_); auto o = ::flatbuffers::Offset(end); return o; } }; inline ::flatbuffers::Offset CreateVideoResolution( ::flatbuffers::FlatBufferBuilder &_fbb, uint32_t width = 0, uint32_t height = 0, bool hdr = false, ::flatbuffers::Offset<::flatbuffers::String> label = 0) { VideoResolutionBuilder builder_(_fbb); builder_.add_label(label); builder_.add_height(height); builder_.add_width(width); builder_.add_hdr(hdr); return builder_.Finish(); } inline ::flatbuffers::Offset CreateVideoResolutionDirect( ::flatbuffers::FlatBufferBuilder &_fbb, uint32_t width = 0, uint32_t height = 0, bool hdr = false, const char *label = nullptr) { auto label__ = label ? _fbb.CreateString(label) : 0; return bex::wire::CreateVideoResolution( _fbb, width, height, hdr, label__); } struct VideoTrack FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { typedef VideoTrackBuilder Builder; enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_RESOLUTION = 4, VT_URL = 6, VT_MIME_TYPE = 8, VT_BITRATE = 10, VT_CODECS = 12 }; const bex::wire::VideoResolution *resolution() const { return GetPointer(VT_RESOLUTION); } const ::flatbuffers::String *url() const { return GetPointer(VT_URL); } const ::flatbuffers::String *mime_type() const { return GetPointer(VT_MIME_TYPE); } uint64_t bitrate() const { return GetField(VT_BITRATE, 0); } const ::flatbuffers::String *codecs() const { return GetPointer(VT_CODECS); } template bool Verify(::flatbuffers::VerifierTemplate &verifier) const { return VerifyTableStart(verifier) && VerifyOffset(verifier, VT_RESOLUTION) && verifier.VerifyTable(resolution()) && VerifyOffset(verifier, VT_URL) && verifier.VerifyString(url()) && VerifyOffset(verifier, VT_MIME_TYPE) && verifier.VerifyString(mime_type()) && VerifyField(verifier, VT_BITRATE, 8) && VerifyOffset(verifier, VT_CODECS) && verifier.VerifyString(codecs()) && verifier.EndTable(); } }; struct VideoTrackBuilder { typedef VideoTrack Table; ::flatbuffers::FlatBufferBuilder &fbb_; ::flatbuffers::uoffset_t start_; void add_resolution(::flatbuffers::Offset resolution) { fbb_.AddOffset(VideoTrack::VT_RESOLUTION, resolution); } void add_url(::flatbuffers::Offset<::flatbuffers::String> url) { fbb_.AddOffset(VideoTrack::VT_URL, url); } void add_mime_type(::flatbuffers::Offset<::flatbuffers::String> mime_type) { fbb_.AddOffset(VideoTrack::VT_MIME_TYPE, mime_type); } void add_bitrate(uint64_t bitrate) { fbb_.AddElement(VideoTrack::VT_BITRATE, bitrate, 0); } void add_codecs(::flatbuffers::Offset<::flatbuffers::String> codecs) { fbb_.AddOffset(VideoTrack::VT_CODECS, codecs); } explicit VideoTrackBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ::flatbuffers::Offset Finish() { const auto end = fbb_.EndTable(start_); auto o = ::flatbuffers::Offset(end); return o; } }; inline ::flatbuffers::Offset CreateVideoTrack( ::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset resolution = 0, ::flatbuffers::Offset<::flatbuffers::String> url = 0, ::flatbuffers::Offset<::flatbuffers::String> mime_type = 0, uint64_t bitrate = 0, ::flatbuffers::Offset<::flatbuffers::String> codecs = 0) { VideoTrackBuilder builder_(_fbb); builder_.add_bitrate(bitrate); builder_.add_codecs(codecs); builder_.add_mime_type(mime_type); builder_.add_url(url); builder_.add_resolution(resolution); return builder_.Finish(); } inline ::flatbuffers::Offset CreateVideoTrackDirect( ::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset resolution = 0, const char *url = nullptr, const char *mime_type = nullptr, uint64_t bitrate = 0, const char *codecs = nullptr) { auto url__ = url ? _fbb.CreateString(url) : 0; auto mime_type__ = mime_type ? _fbb.CreateString(mime_type) : 0; auto codecs__ = codecs ? _fbb.CreateString(codecs) : 0; return bex::wire::CreateVideoTrack( _fbb, resolution, url__, mime_type__, bitrate, codecs__); } struct SubtitleTrack FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { typedef SubtitleTrackBuilder Builder; enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_LABEL = 4, VT_URL = 6, VT_LANGUAGE = 8, VT_FORMAT = 10 }; const ::flatbuffers::String *label() const { return GetPointer(VT_LABEL); } const ::flatbuffers::String *url() const { return GetPointer(VT_URL); } const ::flatbuffers::String *language() const { return GetPointer(VT_LANGUAGE); } const ::flatbuffers::String *format() const { return GetPointer(VT_FORMAT); } template bool Verify(::flatbuffers::VerifierTemplate &verifier) const { return VerifyTableStart(verifier) && VerifyOffset(verifier, VT_LABEL) && verifier.VerifyString(label()) && VerifyOffset(verifier, VT_URL) && verifier.VerifyString(url()) && VerifyOffset(verifier, VT_LANGUAGE) && verifier.VerifyString(language()) && VerifyOffset(verifier, VT_FORMAT) && verifier.VerifyString(format()) && verifier.EndTable(); } }; struct SubtitleTrackBuilder { typedef SubtitleTrack Table; ::flatbuffers::FlatBufferBuilder &fbb_; ::flatbuffers::uoffset_t start_; void add_label(::flatbuffers::Offset<::flatbuffers::String> label) { fbb_.AddOffset(SubtitleTrack::VT_LABEL, label); } void add_url(::flatbuffers::Offset<::flatbuffers::String> url) { fbb_.AddOffset(SubtitleTrack::VT_URL, url); } void add_language(::flatbuffers::Offset<::flatbuffers::String> language) { fbb_.AddOffset(SubtitleTrack::VT_LANGUAGE, language); } void add_format(::flatbuffers::Offset<::flatbuffers::String> format) { fbb_.AddOffset(SubtitleTrack::VT_FORMAT, format); } explicit SubtitleTrackBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ::flatbuffers::Offset Finish() { const auto end = fbb_.EndTable(start_); auto o = ::flatbuffers::Offset(end); return o; } }; inline ::flatbuffers::Offset CreateSubtitleTrack( ::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::String> label = 0, ::flatbuffers::Offset<::flatbuffers::String> url = 0, ::flatbuffers::Offset<::flatbuffers::String> language = 0, ::flatbuffers::Offset<::flatbuffers::String> format = 0) { SubtitleTrackBuilder builder_(_fbb); builder_.add_format(format); builder_.add_language(language); builder_.add_url(url); builder_.add_label(label); return builder_.Finish(); } inline ::flatbuffers::Offset CreateSubtitleTrackDirect( ::flatbuffers::FlatBufferBuilder &_fbb, const char *label = nullptr, const char *url = nullptr, const char *language = nullptr, const char *format = nullptr) { auto label__ = label ? _fbb.CreateString(label) : 0; auto url__ = url ? _fbb.CreateString(url) : 0; auto language__ = language ? _fbb.CreateString(language) : 0; auto format__ = format ? _fbb.CreateString(format) : 0; return bex::wire::CreateSubtitleTrack( _fbb, label__, url__, language__, format__); } struct Server FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { typedef ServerBuilder Builder; enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_LABEL = 6, VT_URL = 8, VT_PRIORITY = 10, VT_EXTRA = 12 }; const ::flatbuffers::String *id() const { return GetPointer(VT_ID); } const ::flatbuffers::String *label() const { return GetPointer(VT_LABEL); } const ::flatbuffers::String *url() const { return GetPointer(VT_URL); } uint8_t priority() const { return GetField(VT_PRIORITY, 0); } const ::flatbuffers::Vector<::flatbuffers::Offset> *extra() const { return GetPointer> *>(VT_EXTRA); } template bool Verify(::flatbuffers::VerifierTemplate &verifier) const { return VerifyTableStart(verifier) && VerifyOffset(verifier, VT_ID) && verifier.VerifyString(id()) && VerifyOffset(verifier, VT_LABEL) && verifier.VerifyString(label()) && VerifyOffset(verifier, VT_URL) && verifier.VerifyString(url()) && VerifyField(verifier, VT_PRIORITY, 1) && VerifyOffset(verifier, VT_EXTRA) && verifier.VerifyVector(extra()) && verifier.VerifyVectorOfTables(extra()) && verifier.EndTable(); } }; struct ServerBuilder { typedef Server Table; ::flatbuffers::FlatBufferBuilder &fbb_; ::flatbuffers::uoffset_t start_; void add_id(::flatbuffers::Offset<::flatbuffers::String> id) { fbb_.AddOffset(Server::VT_ID, id); } void add_label(::flatbuffers::Offset<::flatbuffers::String> label) { fbb_.AddOffset(Server::VT_LABEL, label); } void add_url(::flatbuffers::Offset<::flatbuffers::String> url) { fbb_.AddOffset(Server::VT_URL, url); } void add_priority(uint8_t priority) { fbb_.AddElement(Server::VT_PRIORITY, priority, 0); } void add_extra(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> extra) { fbb_.AddOffset(Server::VT_EXTRA, extra); } explicit ServerBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ::flatbuffers::Offset Finish() { const auto end = fbb_.EndTable(start_); auto o = ::flatbuffers::Offset(end); return o; } }; inline ::flatbuffers::Offset CreateServer( ::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::String> id = 0, ::flatbuffers::Offset<::flatbuffers::String> label = 0, ::flatbuffers::Offset<::flatbuffers::String> url = 0, uint8_t priority = 0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> extra = 0) { ServerBuilder builder_(_fbb); builder_.add_extra(extra); builder_.add_url(url); builder_.add_label(label); builder_.add_id(id); builder_.add_priority(priority); return builder_.Finish(); } inline ::flatbuffers::Offset CreateServerDirect( ::flatbuffers::FlatBufferBuilder &_fbb, const char *id = nullptr, const char *label = nullptr, const char *url = nullptr, uint8_t priority = 0, const std::vector<::flatbuffers::Offset> *extra = nullptr) { auto id__ = id ? _fbb.CreateString(id) : 0; auto label__ = label ? _fbb.CreateString(label) : 0; auto url__ = url ? _fbb.CreateString(url) : 0; auto extra__ = extra ? _fbb.CreateVector<::flatbuffers::Offset>(*extra) : 0; return bex::wire::CreateServer( _fbb, id__, label__, url__, priority, extra__); } struct StreamSource FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table { typedef StreamSourceBuilder Builder; enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_LABEL = 6, VT_FORMAT = 8, VT_MANIFEST_URL = 10, VT_VIDEOS = 12, VT_SUBTITLES = 14, VT_HEADERS = 16, VT_EXTRA = 18 }; const ::flatbuffers::String *id() const { return GetPointer(VT_ID); } const ::flatbuffers::String *label() const { return GetPointer(VT_LABEL); } bex::wire::StreamFormat format() const { return static_cast(GetField(VT_FORMAT, 0)); } const ::flatbuffers::String *manifest_url() const { return GetPointer(VT_MANIFEST_URL); } const ::flatbuffers::Vector<::flatbuffers::Offset> *videos() const { return GetPointer> *>(VT_VIDEOS); } const ::flatbuffers::Vector<::flatbuffers::Offset> *subtitles() const { return GetPointer> *>(VT_SUBTITLES); } const ::flatbuffers::Vector<::flatbuffers::Offset> *headers() const { return GetPointer> *>(VT_HEADERS); } const ::flatbuffers::Vector<::flatbuffers::Offset> *extra() const { return GetPointer> *>(VT_EXTRA); } template bool Verify(::flatbuffers::VerifierTemplate &verifier) const { return VerifyTableStart(verifier) && VerifyOffset(verifier, VT_ID) && verifier.VerifyString(id()) && VerifyOffset(verifier, VT_LABEL) && verifier.VerifyString(label()) && VerifyField(verifier, VT_FORMAT, 1) && VerifyOffset(verifier, VT_MANIFEST_URL) && verifier.VerifyString(manifest_url()) && VerifyOffset(verifier, VT_VIDEOS) && verifier.VerifyVector(videos()) && verifier.VerifyVectorOfTables(videos()) && VerifyOffset(verifier, VT_SUBTITLES) && verifier.VerifyVector(subtitles()) && verifier.VerifyVectorOfTables(subtitles()) && VerifyOffset(verifier, VT_HEADERS) && verifier.VerifyVector(headers()) && verifier.VerifyVectorOfTables(headers()) && VerifyOffset(verifier, VT_EXTRA) && verifier.VerifyVector(extra()) && verifier.VerifyVectorOfTables(extra()) && verifier.EndTable(); } }; struct StreamSourceBuilder { typedef StreamSource Table; ::flatbuffers::FlatBufferBuilder &fbb_; ::flatbuffers::uoffset_t start_; void add_id(::flatbuffers::Offset<::flatbuffers::String> id) { fbb_.AddOffset(StreamSource::VT_ID, id); } void add_label(::flatbuffers::Offset<::flatbuffers::String> label) { fbb_.AddOffset(StreamSource::VT_LABEL, label); } void add_format(bex::wire::StreamFormat format) { fbb_.AddElement(StreamSource::VT_FORMAT, static_cast(format), 0); } void add_manifest_url(::flatbuffers::Offset<::flatbuffers::String> manifest_url) { fbb_.AddOffset(StreamSource::VT_MANIFEST_URL, manifest_url); } void add_videos(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> videos) { fbb_.AddOffset(StreamSource::VT_VIDEOS, videos); } void add_subtitles(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> subtitles) { fbb_.AddOffset(StreamSource::VT_SUBTITLES, subtitles); } void add_headers(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> headers) { fbb_.AddOffset(StreamSource::VT_HEADERS, headers); } void add_extra(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> extra) { fbb_.AddOffset(StreamSource::VT_EXTRA, extra); } explicit StreamSourceBuilder(::flatbuffers::FlatBufferBuilder &_fbb) : fbb_(_fbb) { start_ = fbb_.StartTable(); } ::flatbuffers::Offset Finish() { const auto end = fbb_.EndTable(start_); auto o = ::flatbuffers::Offset(end); return o; } }; inline ::flatbuffers::Offset CreateStreamSource( ::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::String> id = 0, ::flatbuffers::Offset<::flatbuffers::String> label = 0, bex::wire::StreamFormat format = bex::wire::StreamFormat_Hls, ::flatbuffers::Offset<::flatbuffers::String> manifest_url = 0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> videos = 0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> subtitles = 0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> headers = 0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset>> extra = 0) { StreamSourceBuilder builder_(_fbb); builder_.add_extra(extra); builder_.add_headers(headers); builder_.add_subtitles(subtitles); builder_.add_videos(videos); builder_.add_manifest_url(manifest_url); builder_.add_label(label); builder_.add_id(id); builder_.add_format(format); return builder_.Finish(); } inline ::flatbuffers::Offset CreateStreamSourceDirect( ::flatbuffers::FlatBufferBuilder &_fbb, const char *id = nullptr, const char *label = nullptr, bex::wire::StreamFormat format = bex::wire::StreamFormat_Hls, const char *manifest_url = nullptr, const std::vector<::flatbuffers::Offset> *videos = nullptr, const std::vector<::flatbuffers::Offset> *subtitles = nullptr, const std::vector<::flatbuffers::Offset> *headers = nullptr, const std::vector<::flatbuffers::Offset> *extra = nullptr) { auto id__ = id ? _fbb.CreateString(id) : 0; auto label__ = label ? _fbb.CreateString(label) : 0; auto manifest_url__ = manifest_url ? _fbb.CreateString(manifest_url) : 0; auto videos__ = videos ? _fbb.CreateVector<::flatbuffers::Offset>(*videos) : 0; auto subtitles__ = subtitles ? _fbb.CreateVector<::flatbuffers::Offset>(*subtitles) : 0; auto headers__ = headers ? _fbb.CreateVector<::flatbuffers::Offset>(*headers) : 0; auto extra__ = extra ? _fbb.CreateVector<::flatbuffers::Offset>(*extra) : 0; return bex::wire::CreateStreamSource( _fbb, id__, label__, format, manifest_url__, videos__, subtitles__, headers__, extra__); } inline const bex::wire::StreamSource *GetStreamSource(const void *buf) { return ::flatbuffers::GetRoot(buf); } inline const bex::wire::StreamSource *GetSizePrefixedStreamSource(const void *buf) { return ::flatbuffers::GetSizePrefixedRoot(buf); } template inline bool VerifyStreamSourceBuffer( ::flatbuffers::VerifierTemplate &verifier) { return verifier.template VerifyBuffer(nullptr); } template inline bool VerifySizePrefixedStreamSourceBuffer( ::flatbuffers::VerifierTemplate &verifier) { return verifier.template VerifySizePrefixedBuffer(nullptr); } inline void FinishStreamSourceBuffer( ::flatbuffers::FlatBufferBuilder &fbb, ::flatbuffers::Offset root) { fbb.Finish(root); } inline void FinishSizePrefixedStreamSourceBuffer( ::flatbuffers::FlatBufferBuilder &fbb, ::flatbuffers::Offset root) { fbb.FinishSizePrefixed(root); } } // namespace wire } // namespace bex #endif // FLATBUFFERS_GENERATED_BEXSTREAM_BEX_WIRE_H_