1#ifndef _BBC_PARSE_DASH_MPD_REPRESENTATION_HH_
2#define _BBC_PARSE_DASH_MPD_REPRESENTATION_HH_
57 using time_type = std::chrono::system_clock::time_point;
141 const std::string &
id()
const {
return m_id; };
149 const std::optional<unsigned int> &
qualityRanking()
const {
return m_qualityRanking; };
154 const std::list<std::string> &
dependencyId()
const {
return m_dependencyIds; };
156 const std::list<std::string> &
associationId()
const {
return m_associationIds; };
242 void setXMLElement(xmlpp::Element&)
const;
251 std::optional<duration_type> getPeriodDuration()
const;
258 unsigned int m_bandwidth;
259 std::optional<unsigned int> m_qualityRanking;
260 std::list<std::string> m_dependencyIds;
261 std::list<std::string> m_associationIds;
262 std::list<std::string> m_associationTypes;
263 std::list<std::string> m_mediaStreamStructureIds;
266 std::list<BaseURL> m_baseURLs;
267 std::list<ExtendedBandwidth> m_extendedBandwidths;
268 std::list<SubRepresentation> m_subRepresentations;
269 std::optional<SegmentBase> m_segmentBase;
270 std::optional<SegmentList> m_segmentList;
271 std::optional<SegmentTemplate> m_segmentTemplate;
AdaptationSet class.
Definition AdaptationSet.hh:60
Definition MultipleSegmentBase.hh:39
unsigned int bandwidth() const
Definition Representation.hh:145
const std::optional< unsigned int > & qualityRanking() const
Definition Representation.hh:149
std::chrono::microseconds duration_type
The type used to represent duration values in this class.
Definition Representation.hh:58
const MPD * getMPD() const
SegmentAvailability initialisationSegmentAvailability() const
const std::list< std::string > & associationId() const
Definition Representation.hh:156
bool operator==(const Representation &to_compare) const
URI getMediaURL(unsigned long segment_number) const
Representation(Representation &&to_move)
bool hasQualityRanking() const
Definition Representation.hh:148
Representation & bandwidth(unsigned int bandwidth)
Definition Representation.hh:146
URI getInitializationURL() const
const std::string & id() const
Definition Representation.hh:141
const std::list< std::string > & mediaStreamStructureId() const
Definition Representation.hh:160
const std::list< std::string > & dependencyId() const
Definition Representation.hh:154
Representation & operator=(Representation &&to_move)
const std::list< std::string > & associationType() const
Definition Representation.hh:158
AdaptationSet * getAdaptationSet()
Definition Representation.hh:170
URI getMediaURL(time_type segment_time) const
Representation & operator=(const Representation &to_copy)
SegmentAvailability segmentAvailability(const time_type &query_time) const
virtual ~Representation()
Definition Representation.hh:84
std::list< BaseURL > getBaseURLs() const
const Period * getPeriod() const
Representation(const Representation &to_copy)
Representation & qualityRanking(unsigned int qual_rank)
Definition Representation.hh:151
Representation & qualityRanking(const std::optional< unsigned int > &qual_rank)
Definition Representation.hh:152
Representation & qualityRanking(const std::nullopt_t &)
Definition Representation.hh:150
const AdaptationSet * getAdaptationSet() const
Definition Representation.hh:171
Representation & id(const std::string &id)
Definition Representation.hh:142
std::chrono::system_clock::time_point time_type
The type used to represent date-time values in this class.
Definition Representation.hh:57
Representation & id(std::string &&id)
Definition Representation.hh:143
Definition SegmentAvailability.hh:27
Definition SegmentTemplate.hh:46
#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