LibQuicR
Loading...
Searching...
No Matches
quicr::TrackNamespace Class Reference

An N-tuple representation of a MOQ namespace. More...

#include <track_name.h>

Public Member Functions

 TrackNamespace ()=default
template<typename... B, std::enable_if_t< std::is_same_v< std::common_type_t< B... >, std::vector< uint8_t > >, bool > = true>
 TrackNamespace (B &&... entries)
 Constructs a namespace from a variadic number of Bytes parameters.
template<typename... S, std::enable_if_t< std::is_same_v< std::common_type_t< S... >, std::string >, bool > = true>
 TrackNamespace (S &&... entries)
 Constructs a namespace from a variadic number of string parameters.
 TrackNamespace (const std::vector< std::vector< uint8_t > > &entries)
 TrackNamespace (const std::vector< std::string > &entries)
 TrackNamespace (const TrackNamespace &other)
 TrackNamespace (TrackNamespace &&other)
TrackNamespaceoperator= (const TrackNamespace &other)
TrackNamespaceoperator= (TrackNamespace &&other)
const std::vector< std::span< const uint8_t > > & GetEntries () const noexcept
const auto & GetHashes () const noexcept
auto begin () noexcept
auto end () noexcept
auto begin () const noexcept
auto end () const noexcept
auto data () const noexcept
auto size () const noexcept
bool empty () const noexcept
bool IsPrefixOf (const TrackNamespace &other) const noexcept
bool HasSamePrefix (const TrackNamespace &other) const noexcept

Detailed Description

An N-tuple representation of a MOQ namespace.

Constructor & Destructor Documentation

◆ TrackNamespace() [1/7]

quicr::TrackNamespace::TrackNamespace ( )
default

◆ TrackNamespace() [2/7]

template<typename... B, std::enable_if_t< std::is_same_v< std::common_type_t< B... >, std::vector< uint8_t > >, bool > = true>
quicr::TrackNamespace::TrackNamespace ( B &&... entries)
inlineexplicit

Constructs a namespace from a variadic number of Bytes parameters.

Template Parameters
BMUST be std::vector<uint8_t>
Parameters
entriesThe variadic amount of Bytes arguments.

◆ TrackNamespace() [3/7]

template<typename... S, std::enable_if_t< std::is_same_v< std::common_type_t< S... >, std::string >, bool > = true>
quicr::TrackNamespace::TrackNamespace ( S &&... entries)
inlineexplicit

Constructs a namespace from a variadic number of string parameters.

Template Parameters
SMUST be std::string
Parameters
entriesThe variadic amount of string arguments.

◆ TrackNamespace() [4/7]

quicr::TrackNamespace::TrackNamespace ( const std::vector< std::vector< uint8_t > > & entries)
inline

◆ TrackNamespace() [5/7]

quicr::TrackNamespace::TrackNamespace ( const std::vector< std::string > & entries)
inline

◆ TrackNamespace() [6/7]

quicr::TrackNamespace::TrackNamespace ( const TrackNamespace & other)
inline

◆ TrackNamespace() [7/7]

quicr::TrackNamespace::TrackNamespace ( TrackNamespace && other)
inline

Member Function Documentation

◆ begin() [1/2]

auto quicr::TrackNamespace::begin ( ) const
inlinenoexcept

◆ begin() [2/2]

auto quicr::TrackNamespace::begin ( )
inlinenoexcept

◆ data()

auto quicr::TrackNamespace::data ( ) const
inlinenoexcept

◆ empty()

bool quicr::TrackNamespace::empty ( ) const
inlinenoexcept

◆ end() [1/2]

auto quicr::TrackNamespace::end ( ) const
inlinenoexcept

◆ end() [2/2]

auto quicr::TrackNamespace::end ( )
inlinenoexcept

◆ GetEntries()

const std::vector< std::span< const uint8_t > > & quicr::TrackNamespace::GetEntries ( ) const
inlinenoexcept
Examples
client.cpp.

◆ GetHashes()

const auto & quicr::TrackNamespace::GetHashes ( ) const
inlinenoexcept

◆ HasSamePrefix()

bool quicr::TrackNamespace::HasSamePrefix ( const TrackNamespace & other) const
inlinenoexcept

◆ IsPrefixOf()

bool quicr::TrackNamespace::IsPrefixOf ( const TrackNamespace & other) const
inlinenoexcept

◆ operator=() [1/2]

TrackNamespace & quicr::TrackNamespace::operator= ( const TrackNamespace & other)
inline

◆ operator=() [2/2]

TrackNamespace & quicr::TrackNamespace::operator= ( TrackNamespace && other)
inline

◆ size()

auto quicr::TrackNamespace::size ( ) const
inlinenoexcept

The documentation for this class was generated from the following file: