blob: 9e97f0cb01f61ffbf2a18896568c8a4a0980e62a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
/*
* Period.h
*****************************************************************************
* Copyright (C) 2012, bitmovin Softwareentwicklung OG, All Rights Reserved
*
* Email: libdash-dev@vicky.bitmovin.net
*
* This source code and its use and distribution, is subject to the terms
* and conditions of the applicable license agreement.
*****************************************************************************/
#ifndef PERIOD_H_
#define PERIOD_H_
#include "config.h"
#include "IPeriod.h"
#include "BaseUrl.h"
#include "AdaptationSet.h"
#include "Subset.h"
#include "SegmentBase.h"
#include "SegmentList.h"
#include "SegmentTemplate.h"
#include "AbstractMPDElement.h"
namespace dash
{
namespace mpd
{
class Period : public IPeriod, public AbstractMPDElement
{
public:
Period ();
virtual ~Period ();
const std::vector<IBaseUrl *>& GetBaseURLs () const;
ISegmentBase* GetSegmentBase () const;
ISegmentList* GetSegmentList () const;
ISegmentTemplate* GetSegmentTemplate () const;
const std::vector<IAdaptationSet *>& GetAdaptationSets () const;
const std::vector<ISubset *>& GetSubsets () const;
const std::string& GetXlinkHref () const;
const std::string& GetXlinkActuate () const;
const std::string& GetId () const;
const std::string& GetStart () const;
const std::string& GetDuration () const;
bool GetBitstreamSwitching () const;
void AddBaseURL (BaseUrl *baseURL);
void SetSegmentBase (SegmentBase *segmentBase);
void SetSegmentList (SegmentList *segmentList);
void SetSegmentTemplate (SegmentTemplate *segmentTemplate);
void AddAdaptationSet (AdaptationSet *AdaptationSet);
void AddSubset (Subset *subset);
void SetXlinkHref (const std::string& xlinkHref);
void SetXlinkActuate (const std::string& xlinkActuate);
void SetId (const std::string& id);
void SetStart (const std::string& start);
void SetDuration (const std::string& duration);
void SetBitstreamSwitching (bool value);
private:
std::vector<BaseUrl *> baseURLs;
SegmentBase *segmentBase;
SegmentList *segmentList;
SegmentTemplate *segmentTemplate;
std::vector<AdaptationSet *> adaptationSets;
std::vector<Subset *> subsets;
std::string xlinkHref;
std::string xlinkActuate;
std::string id;
std::string start;
std::string duration;
bool isBitstreamSwitching;
};
}
}
#endif /* PERIOD_H_ */
|