1#ifndef _BBC_PARSE_DASH_MPD_ADAPTATION_SET_HH_
2#define _BBC_PARSE_DASH_MPD_ADAPTATION_SET_HH_
18#include <unordered_set>
62 using time_type = std::chrono::system_clock::time_point;
152 bool hasId()
const {
return m_id.has_value(); };
159 const std::optional<unsigned int> &
id()
const {
return m_id; };
190 AdaptationSet &
id(std::optional<unsigned int> &&
id) { m_id = std::move(
id);
return *
this;};
199 bool hasGroup()
const {
return m_group.has_value(); };
206 const std::optional<unsigned int> &
group()
const {
return m_group; };
246 bool hasLang()
const {
return m_lang.has_value(); };
253 const std::optional<std::string> &
lang()
const {
return m_lang; };
316 const std::optional<RFC6838ContentType> &
contentType()
const {
return m_contentType;};
365 AdaptationSet &
contentType(std::optional<RFC6838ContentType> &&content_type) { m_contentType = std::move(content_type);
return *
this;};
374 bool hasPar()
const {
return m_par.has_value(); };
381 const std::optional<Ratio> &
par()
const {
return m_par;};
444 const std::optional<unsigned int> &
minBandwidth()
const {
return m_minBandwidth; };
495 const std::optional<unsigned int> &
maxBandwidth()
const {
return m_maxBandwidth; };
546 const std::optional<unsigned int> &
minWidth()
const {
return m_minWidth; };
581 AdaptationSet &
minWidth(std::optional<unsigned int> &&min_width) { m_minWidth = std::move(min_width);
return *
this;};
597 const std::optional<unsigned int> &
maxWidth()
const {
return m_maxWidth; };
632 AdaptationSet &
maxWidth(std::optional<unsigned int> &&max_width) { m_maxWidth = std::move(max_width);
return *
this;};
648 const std::optional<unsigned int> &
minHeight()
const {
return m_minHeight; };
699 const std::optional<unsigned int> &
maxHeight()
const {
return m_maxHeight; };
750 const std::optional<FrameRate> &
minFrameRate()
const {
return m_minFrameRate;};
813 const std::optional<FrameRate> &
maxFrameRate()
const {
return m_maxFrameRate;};
1016 if (idx >= m_initializationSetRefs.size())
1017 throw std::out_of_range(
"AdaptationSet Initialization Set Reference does not exist");
1018 auto it = m_initializationSetRefs.cbegin();
1019 while (idx > 0 && it != m_initializationSetRefs.cend()) {it++; idx--;}
1029 bool initializationSetRefsContains(
unsigned int ref)
const {
return std::find(m_initializationSetRefs.cbegin(), m_initializationSetRefs.cend(), ref) != m_initializationSetRefs.cend(); };
1045 AdaptationSet &
initializationSetRefRemove(
unsigned int ref) {
auto it = std::find(m_initializationSetRefs.cbegin(), m_initializationSetRefs.cend(), ref);
if (it != m_initializationSetRefs.cend()) m_initializationSetRefs.erase(it);
return *
this; };
1228 const std::list<Descriptor> &
roles()
const {
return m_roles; };
1236 std::list<Descriptor>::const_iterator
rolesBegin()
const {
return m_roles.cbegin(); };
1237 std::list<Descriptor>::iterator
rolesBegin() {
return m_roles.begin(); };
1246 std::list<Descriptor>::const_iterator
rolesEnd()
const {
return m_roles.cend(); };
1247 std::list<Descriptor>::iterator
rolesEnd() {
return m_roles.end(); };
1306 const std::list<Descriptor> &
ratings()
const {
return m_ratings; };
1314 std::list<Descriptor>::const_iterator
ratingsBegin()
const {
return m_ratings.cbegin(); };
1315 std::list<Descriptor>::iterator
ratingsBegin() {
return m_ratings.begin(); };
1324 std::list<Descriptor>::const_iterator
ratingsEnd()
const {
return m_ratings.cend(); };
1325 std::list<Descriptor>::iterator
ratingsEnd() {
return m_ratings.end(); };
1384 const std::list<Descriptor> &
viewpoints()
const {
return m_viewpoints; };
1392 std::list<Descriptor>::const_iterator
viewpointsBegin()
const {
return m_viewpoints.cbegin(); };
1402 std::list<Descriptor>::const_iterator
viewpointsEnd()
const {
return m_viewpoints.cend(); };
1540 const std::list<BaseURL> &
baseURLs()
const {
return m_baseURLs; };
1548 std::list<BaseURL>::const_iterator
baseURLsBegin()
const {
return m_baseURLs.cbegin(); };
1558 std::list<BaseURL>::const_iterator
baseURLsEnd()
const {
return m_baseURLs.cend(); };
1559 std::list<BaseURL>::iterator
baseURLsEnd() {
return m_baseURLs.end(); };
1630 const std::optional<SegmentBase> &
segmentBase()
const {
return m_segmentBase; };
1682 const std::optional<SegmentList> &
segmentList()
const {
return m_segmentList; };
1734 const std::optional<SegmentTemplate> &
segmentTemplate()
const {
return m_segmentTemplate; };
1798 std::list<Representation>::const_iterator
representationsEnd()
const {
return m_representations.cend(); };
1999 void setXMLElement(xmlpp::Element &element)
const;
2057 time_type getPeriodStartTime()
const;
2065 std::optional<duration_type> getPeriodDuration()
const;
2081 std::unordered_set<const Representation*> m_selectedRepresentations;
2084 std::optional<XLink> m_xlink;
2085 std::optional<unsigned int> m_id;
2086 std::optional<unsigned int> m_group;
2087 std::optional<std::string> m_lang;
2088 std::optional<RFC6838ContentType> m_contentType;
2089 std::optional<Ratio> m_par;
2090 std::optional<unsigned int> m_minBandwidth;
2091 std::optional<unsigned int> m_maxBandwidth;
2092 std::optional<unsigned int> m_minWidth;
2093 std::optional<unsigned int> m_maxWidth;
2094 std::optional<unsigned int> m_minHeight;
2095 std::optional<unsigned int> m_maxHeight;
2096 std::optional<FrameRate> m_minFrameRate;
2097 std::optional<FrameRate> m_maxFrameRate;
2098 bool m_segmentAlignment;
2099 bool m_subsegmentAlignment;
2100 SAP m_subsegmentStartsWithSAP;
2101 std::optional<bool> m_bitstreamSwitching;
2102 std::list<unsigned int> m_initializationSetRefs;
2103 std::optional<URI> m_initializationPrincipal;
2106 std::list<Descriptor> m_accessibilities;
2107 std::list<Descriptor> m_roles;
2108 std::list<Descriptor> m_ratings;
2109 std::list<Descriptor> m_viewpoints;
2110 std::list<ContentComponent> m_contentComponents;
2111 std::list<BaseURL> m_baseURLs;
2112 std::optional<SegmentBase> m_segmentBase;
2113 std::optional<SegmentList> m_segmentList;
2114 std::optional<SegmentTemplate> m_segmentTemplate;
2115 std::list<Representation> m_representations;
AdaptationSet & minFrameRate(const std::optional< FrameRate > &min_frame_rate)
Definition AdaptationSet.hh:787
std::list< SegmentAvailability > selectedInitializationSegments() const
AdaptationSet & subsegmentStartsWithSAP(const SAP &subsegment_starts_with_sap)
Definition AdaptationSet.hh:923
void deselectRepresentation(const Representation &rep)
AdaptationSet & rolesRemove(const std::list< Descriptor >::const_iterator &it)
AdaptationSet & maxFrameRate(std::optional< FrameRate > &&max_frame_rate)
Definition AdaptationSet.hh:860
std::list< ContentComponent >::const_iterator contentComponentsBegin() const
Definition AdaptationSet.hh:1470
AdaptationSet & contentComponentsRemove(const std::list< ContentComponent >::const_iterator &it)
AdaptationSet & lang(const std::optional< std::string > &lang)
Definition AdaptationSet.hh:290
AdaptationSet & bitstreamSwitching(const std::nullopt_t &)
Definition AdaptationSet.hh:953
std::chrono::microseconds duration_type
Time duration type.
Definition AdaptationSet.hh:63
const std::optional< Ratio > & par() const
Definition AdaptationSet.hh:381
const std::optional< std::string > & lang() const
Definition AdaptationSet.hh:253
std::list< unsignedint >::const_iterator initializationSetRefsEnd() const
Definition AdaptationSet.hh:1005
bool subsegmentAlignment() const
Definition AdaptationSet.hh:893
std::list< Representation >::const_iterator representationsBegin() const
Definition AdaptationSet.hh:1788
AdaptationSet & representationsRemove(const std::list< Representation >::const_iterator &it)
std::list< BaseURL > getBaseURLs() const
AdaptationSet & contentType(const std::optional< RFC6838ContentType > &content_type)
Definition AdaptationSet.hh:355
AdaptationSet & minFrameRate(const std::nullopt_t &)
Definition AdaptationSet.hh:757
AdaptationSet & baseURLsRemove(const BaseURL &base_url)
const std::optional< unsigned int > & maxHeight() const
Definition AdaptationSet.hh:699
std::list< ContentComponent >::iterator contentComponentsBegin()
Definition AdaptationSet.hh:1471
const std::optional< FrameRate > & minFrameRate() const
Definition AdaptationSet.hh:750
const std::list< unsigned int > & initializationSetRefs() const
Definition AdaptationSet.hh:987
std::list< Descriptor >::const_iterator viewpointsEnd() const
Definition AdaptationSet.hh:1402
const std::optional< unsigned int > & maxBandwidth() const
Definition AdaptationSet.hh:495
AdaptationSet & maxBandwidth(const std::optional< unsigned int > &max_bandwidth)
Definition AdaptationSet.hh:520
AdaptationSet & bitstreamSwitching(const std::optional< bool > &bitstream_switching)
Definition AdaptationSet.hh:969
AdaptationSet & segmentList(std::optional< SegmentList > &&seg_list)
Definition AdaptationSet.hh:1719
bool hasSegmentBase() const
Definition AdaptationSet.hh:1624
AdaptationSet & contentComponentsAdd(ContentComponent &&content_component)
AdaptationSet & maxHeight(const std::optional< unsigned int > &max_height)
Definition AdaptationSet.hh:724
bool hasId() const
Definition AdaptationSet.hh:152
AdaptationSet & par(std::optional< Ratio > &&par)
Definition AdaptationSet.hh:428
const BaseURL & baseURL(std::list< BaseURL >::size_type idx) const
bool hasSegmentList() const
Definition AdaptationSet.hh:1676
AdaptationSet & minWidth(unsigned int min_width)
Definition AdaptationSet.hh:561
AdaptationSet & ratingsAdd(Descriptor &&rating)
AdaptationSet & contentType(const RFC6838ContentType &content_type)
Definition AdaptationSet.hh:335
const MPD * getMPD() const
bool hasInitializationPrincipal() const
Definition AdaptationSet.hh:1091
std::list< ContentComponent >::const_iterator contentComponentsEnd() const
Definition AdaptationSet.hh:1480
void selectAllRepresentations()
bool contentComponentsContains(const ContentComponent &content_component) const
AdaptationSet & initializationPrincipal(URI &&initialization_principal)
Definition AdaptationSet.hh:1121
AdaptationSet & maxHeight(unsigned int max_height)
Definition AdaptationSet.hh:714
AdaptationSet & minWidth(const std::optional< unsigned int > &min_width)
Definition AdaptationSet.hh:571
AdaptationSet & viewpointsAdd(Descriptor &&viewpoint)
std::list< ContentComponent >::iterator contentComponentsEnd()
Definition AdaptationSet.hh:1481
AdaptationSet & accessibilitiesAdd(Descriptor &&accessibility)
std::list< Descriptor >::const_iterator viewpointsBegin() const
Definition AdaptationSet.hh:1392
AdaptationSet & viewpointsAdd(const Descriptor &viewpoint)
const std::optional< SegmentTemplate > & segmentTemplate() const
Definition AdaptationSet.hh:1734
AdaptationSet & bitstreamSwitching(bool bitstream_switching)
Definition AdaptationSet.hh:960
AdaptationSet & maxBandwidth(const std::nullopt_t &)
Definition AdaptationSet.hh:502
std::list< Representation >::const_iterator representationsEnd() const
Definition AdaptationSet.hh:1798
const Descriptor & role(std::list< Descriptor >::size_type idx) const
bool viewpointsContains(const Descriptor &descriptor) const
const std::list< Descriptor > & roles() const
Definition AdaptationSet.hh:1228
AdaptationSet & contentComponentsRemove(const std::list< ContentComponent >::iterator &it)
AdaptationSet & segmentBase(const std::nullopt_t &)
Definition AdaptationSet.hh:1638
AdaptationSet & group(unsigned int group)
Definition AdaptationSet.hh:221
AdaptationSet & representationsRemove(const std::list< Representation >::iterator &it)
AdaptationSet & segmentBase(std::optional< SegmentBase > &&seg_base)
Definition AdaptationSet.hh:1667
std::list< Descriptor >::iterator viewpointsBegin()
Definition AdaptationSet.hh:1393
AdaptationSet & maxFrameRate(const FrameRate &max_frame_rate)
Definition AdaptationSet.hh:830
bool hasMaxFrameRate() const
Definition AdaptationSet.hh:806
const Descriptor & accessibility(std::list< Descriptor >::size_type idx) const
AdaptationSet & lang(std::string &&lang)
Definition AdaptationSet.hh:280
bool baseURLsContains(const BaseURL &base_url) const
AdaptationSet(AdaptationSet &&other)
AdaptationSet & segmentTemplate(std::optional< SegmentTemplate > &&seg_template)
Definition AdaptationSet.hh:1771
AdaptationSet & maxHeight(std::optional< unsigned int > &&max_height)
Definition AdaptationSet.hh:734
const std::list< Descriptor > & ratings() const
Definition AdaptationSet.hh:1306
const std::optional< SegmentBase > & segmentBase() const
Definition AdaptationSet.hh:1630
bool hasGroup() const
Definition AdaptationSet.hh:199
AdaptationSet & initializationSetRefRemove(const std::list< unsigned int >::const_iterator &it)
Definition AdaptationSet.hh:1057
AdaptationSet & minBandwidth(const std::nullopt_t &)
Definition AdaptationSet.hh:451
void deselectAllRepresentations()
AdaptationSet & id(const std::optional< unsigned int > &id)
Definition AdaptationSet.hh:182
AdaptationSet & group(const std::nullopt_t &)
Definition AdaptationSet.hh:213
std::list< Descriptor >::const_iterator accessibilitiesBegin() const
Definition AdaptationSet.hh:1158
AdaptationSet & subsegmentAlignment(bool subsegment_alignment)
Definition AdaptationSet.hh:904
AdaptationSet & segmentAlignment(bool segment_alignment)
Definition AdaptationSet.hh:882
AdaptationSet & segmentTemplate(SegmentTemplate &&seg_template)
Definition AdaptationSet.hh:1760
AdaptationSet & id(std::optional< unsigned int > &&id)
Definition AdaptationSet.hh:190
const std::optional< RFC6838ContentType > & contentType() const
Definition AdaptationSet.hh:316
AdaptationSet & par(Ratio &&par)
Definition AdaptationSet.hh:408
bool hasPar() const
Definition AdaptationSet.hh:374
AdaptationSet & bitstreamSwitching(std::optional< bool > &&bitstream_switching)
Definition AdaptationSet.hh:978
AdaptationSet & ratingsAdd(const Descriptor &rating)
bool hasBitstreamSwitching() const
Definition AdaptationSet.hh:941
std::list< Representation >::iterator representationsEnd()
Definition AdaptationSet.hh:1799
AdaptationSet(const AdaptationSet &other)
AdaptationSet & minFrameRate(FrameRate &&min_frame_rate)
Definition AdaptationSet.hh:777
AdaptationSet & minWidth(std::optional< unsigned int > &&min_width)
Definition AdaptationSet.hh:581
void deselectRepresentation(const std::list< Representation >::const_iterator &rep_it)
AdaptationSet & segmentList(SegmentList &&seg_list)
Definition AdaptationSet.hh:1708
bool representationsContains(const Representation &representation) const
AdaptationSet & maxWidth(const std::nullopt_t &)
Definition AdaptationSet.hh:604
bool operator==(const AdaptationSet &other) const
std::list< Descriptor >::iterator ratingsEnd()
Definition AdaptationSet.hh:1325
AdaptationSet & accessibilitiesAdd(const Descriptor &accessibility)
AdaptationSet & lang(const std::string &lang)
Definition AdaptationSet.hh:270
bool accessibilitiesContains(const Descriptor &descriptor) const
std::list< Descriptor >::const_iterator rolesEnd() const
Definition AdaptationSet.hh:1246
const std::optional< unsigned int > & maxWidth() const
Definition AdaptationSet.hh:597
std::list< unsignedint >::iterator initializationSetRefsEnd()
Definition AdaptationSet.hh:1006
Period * getPeriod()
Definition AdaptationSet.hh:141
AdaptationSet & baseURLsAdd(BaseURL &&base_url)
AdaptationSet & operator=(AdaptationSet &&other)
AdaptationSet & contentType(const std::nullopt_t &)
Definition AdaptationSet.hh:325
AdaptationSet & segmentList(const std::nullopt_t &)
Definition AdaptationSet.hh:1690
const Descriptor & viewpoint(std::list< Descriptor >::size_type idx) const
bool segmentAlignment() const
Definition AdaptationSet.hh:871
AdaptationSet & segmentTemplate(const std::nullopt_t &)
Definition AdaptationSet.hh:1742
AdaptationSet & segmentTemplate(const SegmentTemplate &seg_template)
Definition AdaptationSet.hh:1751
const std::optional< bool > & bitstreamSwitching() const
Definition AdaptationSet.hh:947
AdaptationSet & maxWidth(const std::optional< unsigned int > &max_width)
Definition AdaptationSet.hh:622
const std::optional< unsigned int > & id() const
Definition AdaptationSet.hh:159
bool hasMaxHeight() const
Definition AdaptationSet.hh:692
AdaptationSet & group(std::optional< unsigned int > &&group)
Definition AdaptationSet.hh:237
const std::list< BaseURL > & baseURLs() const
Definition AdaptationSet.hh:1540
AdaptationSet & initializationSetRefs(std::list< unsigned int > &&initialization_set_refs)
Definition AdaptationSet.hh:1082
const std::optional< URI > & initializationPrincipal() const
Definition AdaptationSet.hh:1098
std::chrono::system_clock::time_point time_type
Date-time type.
Definition AdaptationSet.hh:62
AdaptationSet & ratingsRemove(const std::list< Descriptor >::const_iterator &it)
const SAP & subsegmentStartsWithSAP() const
Definition AdaptationSet.hh:913
void deselectRepresentation(const std::list< Representation >::iterator &rep_it)
AdaptationSet & segmentBase(SegmentBase &&seg_base)
Definition AdaptationSet.hh:1656
AdaptationSet & rolesAdd(const Descriptor &role)
AdaptationSet & initializationSetRefRemove(const std::list< unsigned int >::iterator &it)
Definition AdaptationSet.hh:1058
bool hasContentType() const
Definition AdaptationSet.hh:309
AdaptationSet & minWidth(const std::nullopt_t &)
Definition AdaptationSet.hh:553
AdaptationSet & subsegmentStartsWithSAP(SAP &&subsegment_starts_with_sap)
Definition AdaptationSet.hh:933
AdaptationSet & contentType(RFC6838ContentType &&content_type)
Definition AdaptationSet.hh:345
bool hasMinBandwidth() const
Definition AdaptationSet.hh:437
AdaptationSet & minBandwidth(const std::optional< unsigned int > &min_bandwidth)
Definition AdaptationSet.hh:469
AdaptationSet & segmentList(const std::optional< SegmentList > &seg_list)
Definition AdaptationSet.hh:1718
bool hasMinWidth() const
Definition AdaptationSet.hh:539
std::list< Descriptor >::iterator viewpointsEnd()
Definition AdaptationSet.hh:1403
AdaptationSet & initializationPrincipal(std::optional< URI > &&initialization_principal)
Definition AdaptationSet.hh:1143
AdaptationSet & id(unsigned int id)
Definition AdaptationSet.hh:174
const std::list< ContentComponent > & contentComponents() const
Definition AdaptationSet.hh:1462
AdaptationSet & lang(const std::nullopt_t &)
Definition AdaptationSet.hh:260
bool hasMaxBandwidth() const
Definition AdaptationSet.hh:488
const std::optional< unsigned int > & minHeight() const
Definition AdaptationSet.hh:648
AdaptationSet & ratingsRemove(const Descriptor &rating)
AdaptationSet & baseURLsRemove(const std::list< BaseURL >::const_iterator &it)
std::list< BaseURL >::iterator baseURLsEnd()
Definition AdaptationSet.hh:1559
bool hasMinFrameRate() const
Definition AdaptationSet.hh:743
AdaptationSet & representationsRemove(const Representation &representation)
AdaptationSet & baseURLsRemove(const std::list< BaseURL >::iterator &it)
bool hasLang() const
Definition AdaptationSet.hh:246
AdaptationSet & minFrameRate(std::optional< FrameRate > &&min_frame_rate)
Definition AdaptationSet.hh:797
void selectRepresentation(const std::list< Representation >::iterator &rep_it, bool deselect_others=false)
const std::optional< unsigned int > & minBandwidth() const
Definition AdaptationSet.hh:444
std::list< SegmentAvailability > selectedSegmentAvailability(const time_type &query_time) const
AdaptationSet & representationsAdd(Representation &&representation)
AdaptationSet & rolesRemove(const std::list< Descriptor >::iterator &it)
AdaptationSet & accessibilitiesRemove(const std::list< Descriptor >::iterator &it)
AdaptationSet & minHeight(const std::nullopt_t &)
Definition AdaptationSet.hh:655
bool rolesContains(const Descriptor &descriptor) const
AdaptationSet & maxWidth(std::optional< unsigned int > &&max_width)
Definition AdaptationSet.hh:632
const std::optional< unsigned int > & minWidth() const
Definition AdaptationSet.hh:546
AdaptationSet & initializationPrincipal(const std::nullopt_t &)
Definition AdaptationSet.hh:1105
AdaptationSet & minHeight(const std::optional< unsigned int > &min_height)
Definition AdaptationSet.hh:673
AdaptationSet & baseURLsAdd(const BaseURL &base_url)
AdaptationSet & representationsAdd(const Representation &representation)
AdaptationSet & accessibilitiesRemove(const std::list< Descriptor >::const_iterator &it)
AdaptationSet & segmentBase(const std::optional< SegmentBase > &seg_base)
Definition AdaptationSet.hh:1666
void selectRepresentation(const Representation &rep, bool deselect_others=false)
AdaptationSet & par(const std::nullopt_t &)
Definition AdaptationSet.hh:388
AdaptationSet & maxBandwidth(unsigned int max_bandwidth)
Definition AdaptationSet.hh:510
std::list< Representation >::iterator representationsBegin()
Definition AdaptationSet.hh:1789
AdaptationSet & contentType(std::optional< RFC6838ContentType > &&content_type)
Definition AdaptationSet.hh:365
virtual ~AdaptationSet()
Definition AdaptationSet.hh:93
const std::list< Descriptor > & viewpoints() const
Definition AdaptationSet.hh:1384
AdaptationSet & maxFrameRate(const std::nullopt_t &)
Definition AdaptationSet.hh:820
AdaptationSet & initializationSetRefs(const std::list< unsigned int > &initialization_set_refs)
Definition AdaptationSet.hh:1071
std::list< Descriptor >::const_iterator rolesBegin() const
Definition AdaptationSet.hh:1236
AdaptationSet & initializationPrincipal(const URI &initialization_principal)
Definition AdaptationSet.hh:1113
std::list< BaseURL >::const_iterator baseURLsEnd() const
Definition AdaptationSet.hh:1558
std::list< Descriptor >::iterator accessibilitiesBegin()
Definition AdaptationSet.hh:1159
AdaptationSet & par(const std::optional< Ratio > &par)
Definition AdaptationSet.hh:418
std::list< BaseURL >::const_iterator baseURLsBegin() const
Definition AdaptationSet.hh:1548
AdaptationSet & minHeight(std::optional< unsigned int > &&min_height)
Definition AdaptationSet.hh:683
AdaptationSet & segmentBase(const SegmentBase &seg_base)
Definition AdaptationSet.hh:1647
AdaptationSet & initializationPrincipal(const std::optional< URI > &initialization_principal)
Definition AdaptationSet.hh:1132
bool ratingsContains(const Descriptor &descriptor) const
AdaptationSet & initializationSetRefRemove(unsigned int ref)
Definition AdaptationSet.hh:1045
AdaptationSet & minHeight(unsigned int min_height)
Definition AdaptationSet.hh:663
const ContentComponent & contentComponent(std::list< ContentComponent >::size_type idx) const
std::list< unsignedint >::iterator initializationSetRefsBegin()
Definition AdaptationSet.hh:996
AdaptationSet & maxBandwidth(std::optional< unsigned int > &&max_bandwidth)
Definition AdaptationSet.hh:530
std::list< unsignedint >::const_iterator initializationSetRefsBegin() const
Definition AdaptationSet.hh:995
AdaptationSet & viewpointsRemove(const std::list< Descriptor >::const_iterator &it)
bool hasSegmentTemplate() const
Definition AdaptationSet.hh:1728
AdaptationSet & maxHeight(const std::nullopt_t &)
Definition AdaptationSet.hh:706
std::list< Descriptor >::iterator rolesEnd()
Definition AdaptationSet.hh:1247
const std::list< Descriptor > & accessibilities() const
Definition AdaptationSet.hh:1151
std::list< Descriptor >::iterator ratingsBegin()
Definition AdaptationSet.hh:1315
bool hasMinHeight() const
Definition AdaptationSet.hh:641
void selectRepresentation(const std::list< Representation >::const_iterator &rep_it, bool deselect_others=false)
AdaptationSet & segmentTemplate(const std::optional< SegmentTemplate > &seg_template)
Definition AdaptationSet.hh:1770
AdaptationSet & accessibilitiesRemove(const Descriptor &accessibility)
AdaptationSet & par(const Ratio &par)
Definition AdaptationSet.hh:398
AdaptationSet & rolesRemove(const Descriptor &role)
AdaptationSet & ratingsRemove(const std::list< Descriptor >::iterator &it)
AdaptationSet & maxFrameRate(FrameRate &&max_frame_rate)
Definition AdaptationSet.hh:840
AdaptationSet & rolesAdd(Descriptor &&role)
bool hasMaxWidth() const
Definition AdaptationSet.hh:590
AdaptationSet & id(const std::nullopt_t &)
Definition AdaptationSet.hh:166
bool initializationSetRefsContains(unsigned int ref) const
Definition AdaptationSet.hh:1029
const std::optional< unsigned int > & group() const
Definition AdaptationSet.hh:206
std::list< Descriptor >::const_iterator ratingsBegin() const
Definition AdaptationSet.hh:1314
AdaptationSet & contentComponentsAdd(const ContentComponent &content_component)
AdaptationSet & maxWidth(unsigned int max_width)
Definition AdaptationSet.hh:612
AdaptationSet & operator=(const AdaptationSet &other)
const Representation & representation(std::list< Representation >::size_type idx) const
const std::optional< FrameRate > & maxFrameRate() const
Definition AdaptationSet.hh:813
AdaptationSet & lang(std::optional< std::string > &&lang)
Definition AdaptationSet.hh:300
AdaptationSet & minFrameRate(const FrameRate &min_frame_rate)
Definition AdaptationSet.hh:767
AdaptationSet & group(const std::optional< unsigned int > &group)
Definition AdaptationSet.hh:229
AdaptationSet & minBandwidth(unsigned int min_bandwidth)
Definition AdaptationSet.hh:459
std::list< Descriptor >::const_iterator accessibilitiesEnd() const
Definition AdaptationSet.hh:1168
AdaptationSet & initializationSetRefAdd(unsigned int ref)
Definition AdaptationSet.hh:1037
std::list< Descriptor >::iterator accessibilitiesEnd()
Definition AdaptationSet.hh:1169
const std::optional< SegmentList > & segmentList() const
Definition AdaptationSet.hh:1682
AdaptationSet & segmentList(const SegmentList &seg_list)
Definition AdaptationSet.hh:1699
AdaptationSet & maxFrameRate(const std::optional< FrameRate > &max_frame_rate)
Definition AdaptationSet.hh:850
const Descriptor & rating(std::list< Descriptor >::size_type idx) const
std::list< Descriptor >::const_iterator ratingsEnd() const
Definition AdaptationSet.hh:1324
const Period * getPeriod() const
Definition AdaptationSet.hh:142
std::list< BaseURL >::iterator baseURLsBegin()
Definition AdaptationSet.hh:1549
AdaptationSet & viewpointsRemove(const std::list< Descriptor >::iterator &it)
unsigned int initializationSetRef(std::list< unsigned int >::size_type idx) const
Definition AdaptationSet.hh:1015
const std::list< Representation > & representations() const
Definition AdaptationSet.hh:1780
std::list< Descriptor >::iterator rolesBegin()
Definition AdaptationSet.hh:1237
AdaptationSet & contentComponentsRemove(const ContentComponent &content_component)
AdaptationSet & minBandwidth(std::optional< unsigned int > &&min_bandwidth)
Definition AdaptationSet.hh:479
const std::unordered_set< const Representation * > & selectedRepresentations() const
Definition AdaptationSet.hh:1950
AdaptationSet & viewpointsRemove(const Descriptor &viewpoint)
Definition ContentComponent.hh:39
Definition Descriptor.hh:41
Definition FrameRate.hh:38
Definition MultipleSegmentBase.hh:39
Definition RFC6838ContentType.hh:35
Definition Representation.hh:55
Definition SegmentAvailability.hh:27
Definition SegmentBase.hh:41
Definition SegmentList.hh:41
Definition SegmentTemplate.hh:46
Definition SegmentTemplate.hh:40
#define LIBMPDPP_NAMESPACE_END
Definition macros.hh:54
#define LIBMPDPP_PUBLIC_API
Used to mark something as part of the public API.
Definition macros.hh:21
#define LIBMPDPP_NAMESPACE_BEGIN
Definition macros.hh:50