]> git.sesse.net Git - vlc/blob - modules/stream_filter/dash/mpd/Representation.cpp
dash: Removing now unused ElementNotPresentException
[vlc] / modules / stream_filter / dash / mpd / Representation.cpp
1 /*
2  * Representation.cpp
3  *****************************************************************************
4  * Copyright (C) 2010 - 2011 Klagenfurt University
5  *
6  * Created on: Aug 10, 2010
7  * Authors: Christopher Mueller <christopher.mueller@itec.uni-klu.ac.at>
8  *          Christian Timmerer  <christian.timmerer@itec.uni-klu.ac.at>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU Lesser General Public License as published
12  * by the Free Software Foundation; either version 2.1 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU Lesser General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23  *****************************************************************************/
24 #ifdef HAVE_CONFIG_H
25 # include "config.h"
26 #endif
27
28 #include <cstdlib>
29
30 #include "Representation.h"
31
32 using namespace dash::mpd;
33
34 Representation::Representation  (const std::map<std::string, std::string>&  attributes) :
35     qualityRanking( -1 ),
36     attributes( attributes ),
37     segmentInfo( NULL ),
38     trickModeType( NULL )
39 {
40 }
41
42 Representation::~Representation ()
43 {
44     delete(this->segmentInfo);
45     delete(this->trickModeType);
46 }
47
48 const std::string&  Representation::getId                   () const
49 {
50     return this->id;
51 }
52
53 void    Representation::setId(const std::string &id)
54 {
55     if ( id.empty() == false )
56         this->id = id;
57 }
58
59 int     Representation::getBandwidth            () const
60 {
61     return this->bandwidth;
62 }
63
64 void    Representation::setBandwidth( int bandwidth )
65 {
66     if ( bandwidth >= 0 )
67         this->bandwidth = bandwidth;
68 }
69
70 SegmentInfo*        Representation::getSegmentInfo() const
71 {
72     return this->segmentInfo;
73 }
74
75 TrickModeType*      Representation::getTrickModeType        () const
76 {
77     return this->trickModeType;
78 }
79
80 void                Representation::setTrickMode        (TrickModeType *trickModeType)
81 {
82     this->trickModeType = trickModeType;
83 }
84
85 void                Representation::setSegmentInfo          (SegmentInfo *info)
86 {
87     this->segmentInfo = info;
88 }
89
90
91 int Representation::getQualityRanking() const
92 {
93     return this->qualityRanking;
94 }
95
96 void Representation::setQualityRanking( int qualityRanking )
97 {
98     if ( qualityRanking > 0 )
99         this->qualityRanking = qualityRanking;
100 }
101
102 const std::list<const Representation*>&     Representation::getDependencies() const
103 {
104     return this->dependencies;
105 }
106
107 void Representation::addDependency(const Representation *dep)
108 {
109     if ( dep != NULL )
110         this->dependencies.push_back( dep );
111 }