#include <libmpd++/BaseURL.hh>


Public Types | |
| using | duration_type = std::chrono::microseconds |
| The type used to represent durations in this class. | |
Public Member Functions | |
| BaseURL () | |
| BaseURL (const BaseURL &other) | |
| BaseURL (BaseURL &&other) | |
| virtual | ~BaseURL () |
| bool | operator== (const BaseURL &other) const |
| BaseURL | resolveURL (const std::list< BaseURL > &base_urls) const |
| bool | hasServiceLocation () const |
| const std::optional< std::string > & | serviceLocation () const |
| BaseURL & | serviceLocation (const std::nullopt_t &) |
| bool | hasByteRange () const |
| const std::optional< std::string > & | byteRange () const |
| BaseURL & | byteRange (const std::nullopt_t &) |
| bool | hasAvailabilityTimeOffset () const |
| const std::optional< double > & | availabilityTimeOffset () const |
| BaseURL & | availabilityTimeOffset (const std::nullopt_t &) |
| BaseURL & | availabilityTimeOffset (double val) |
| bool | hasAvailabilityTimeComplete () const |
| const std::optional< bool > & | availabilityTimeComplete () const |
| BaseURL & | availabilityTimeComplete (const std::nullopt_t &) |
| BaseURL & | availabilityTimeComplete (bool val) |
| bool | hasTimeShiftBufferDepth () const |
| const std::optional< duration_type > & | timeShiftBufferDepth () const |
| BaseURL & | timeShiftBufferDepth (const std::nullopt_t &) |
| bool | rangeAccess () const |
| BaseURL & | rangeAccess (bool val) |
| BaseURL (const std::string &url) | |
| BaseURL (std::string &&url) | |
| BaseURL & | operator= (const BaseURL &other) |
| BaseURL & | operator= (BaseURL &&other) |
| const URI & | url () const |
| URI & | url () |
| BaseURL & | url (const URI &_url) |
| BaseURL & | url (URI &&_url) |
| BaseURL & | serviceLocation (const std::string &val) |
| BaseURL & | serviceLocation (std::string &&val) |
| BaseURL & | byteRange (const std::string &val) |
| BaseURL & | byteRange (std::string &&val) |
| BaseURL & | timeShiftBufferDepth (const duration_type &val) |
| BaseURL & | timeShiftBufferDepth (duration_type &&val) |
Public Member Functions inherited from com::bbc::libmpdpp::URI | |
| URI () | |
| URI (const char *uri) | |
| URI (const std::string &uri) | |
| URI (std::string &&uri) | |
| URI (const URI &other) | |
| URI (URI &&other) | |
| virtual | ~URI () |
| URI & | operator= (const URI &other) |
| URI & | operator= (URI &&other) |
| URI & | operator= (const std::string &val) |
| URI & | operator= (std::string &&val) |
| bool | operator== (const URI &other) const |
| operator std::string () const | |
| const std::string & | str () const |
| URI | resolveUsingBaseURLs (const std::list< BaseURL > &base_urls) const |
| bool | isURL () const |
| bool | isAbsoluteURL () const |
BaseURL class
This is a container for BaseURL element values and attributes as given in the DASH MPD XML schema found in ISO 23009-1:2022 Clause 5.6.3.
| using com::bbc::libmpdpp::BaseURL::duration_type = std::chrono::microseconds |
The type used to represent durations in this class.
| com::bbc::libmpdpp::BaseURL::BaseURL | ( | ) |
Default constructor
Create an empty BaseURL element.
| com::bbc::libmpdpp::BaseURL::BaseURL | ( | const std::string & | url | ) |
| com::bbc::libmpdpp::BaseURL::BaseURL | ( | std::string && | url | ) |
| com::bbc::libmpdpp::BaseURL::BaseURL | ( | const BaseURL & | other | ) |
| com::bbc::libmpdpp::BaseURL::BaseURL | ( | BaseURL && | other | ) |
|
inlinevirtual |
Destructor
|
inline |
Get the optional @pvailabilityTimeComplete attribute value
|
inline |
Set the @pvailabilityTimeComplete attribute value
| val | The value for the @pvailabilityTimeComplete attribute. |
|
inline |
Unset the @pvailabilityTimeComplete attribute value
|
inline |
Get the optional @pvailabilityTimeOffset attribute value
|
inline |
Unset the @pvailabilityTimeOffset attribute value
|
inline |
Set the @pvailabilityTimeOffset attribute value
| val | The value to set as the @pvailabilityTimeOffset attribute value. |
|
inline |
Get the optional @byteRange attribute value
|
inline |
Unset the @byteRange attribute value
|
inline |
Set the optional @byteRange attribute value
| val | The value of the byte range to set as the @byteRange attribute. |
|
inline |
Set the optional @byteRange attribute value
| val | The value of the byte range to set as the @byteRange attribute. |
|
inline |
Check if the @pvailabilityTimeComplete attribute has been set
true if the @pvailabilityTimeComplete attribute has been set.
|
inline |
Check if the @pvailabilityTimeOffset attribute has been set
true if the @pvailabilityTimeOffset attribute has been set, otherwise false.
|
inline |
Check if the @byteRange attribute has been set
true if the @byteRange attribute has been set.
|
inline |
Check if the serviceLocation attribute is set
true if the serviceLocation attribute has been set.
|
inline |
Check if the @timeShiftBufferDepth attribute value has been set
true if the @timeShiftBufferDepth attribute value has been set. | bool com::bbc::libmpdpp::BaseURL::operator== | ( | const BaseURL & | other | ) | const |
|
inline |
Get the @rangeAccess attribute value
|
inline |
Set the @rangeAccess attribute value
Sets the @rangeAccess attribute value. Setting this to the default value of false will cause this field to be omitted from XML output.
| val | The value to set the @rangeAccess attribute to. |
Create a new BaseURL with the resolved version of this URL
Create a copy of this BaseURL with the url resolved using the provided base_urls. If this BaseURL is absolute then the result will just be a copy of this one. If this BaseURL is relative then the base_urls list will be used to generate an absolute (if possible) URL by combining the relative URL from this BaseURL with one of the absolute URLs from base_urls.
base_urls.
|
inline |
Get the optional serviceLocation attribute value
|
inline |
Unset the serviceLocation attribute value
|
inline |
Set the @serviceLocation attribute value
| val | The value to set for the @serviceLocation attribute. |
|
inline |
Set the @serviceLocation attribute value
| val | The value to set for the @serviceLocation attribute. |
|
inline |
Get the optional @timeShiftBufferDepth attribute value
|
inline |
Set the @timeShiftBufferDepth attribute value
| val | The value to set for the @timeShiftBufferDepth attribute. |
|
inline |
Unset the @timeShiftBufferDepth attribute value
|
inline |
Set the @timeShiftBufferDepth attribute value
| val | The value to set for the @timeShiftBufferDepth attribute. |
|
inline |
Get the URL value
|
inline |
Get the URL value