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< 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.

Examples
client.cpp, and server.cpp.

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< Span< const uint8_t > > & quicr::TrackNamespace::GetEntries ( ) const
inlinenoexcept

◆ 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: