Commit 692fe79d authored by Hugo Beauzée-Luyssen's avatar Hugo Beauzée-Luyssen Committed by Jean-Baptiste Kempf

dash: Removing now useless AttributeNotPresentException

Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
(cherry picked from commit 7127d0c9c8e7519994daa7656c9ddd0d7a5f0278)
Signed-off-by: default avatarJean-Baptiste Kempf <jb@videolan.org>
parent 8cb56514
......@@ -10,7 +10,6 @@ SOURCES_stream_filter_dash = \
adaptationlogic/NullAdaptationLogic.h \
adaptationlogic/RateBasedAdaptationLogic.h \
adaptationlogic/RateBasedAdaptationLogic.cpp \
exceptions/AttributeNotPresentException.h \
exceptions/EOFException.h \
http/Chunk.cpp \
http/Chunk.h \
......
......@@ -33,7 +33,6 @@
#include "mpd/Period.h"
#include "mpd/Representation.h"
#include "mpd/Segment.h"
#include "exceptions/AttributeNotPresentException.h"
#include "exceptions/EOFException.h"
namespace dash
......
/*
* AttributeNotPresentException.h
*****************************************************************************
* Copyright (C) 2010 - 2011 Klagenfurt University
*
* Created on: Aug 10, 2010
* Authors: Christopher Mueller <christopher.mueller@itec.uni-klu.ac.at>
* Christian Timmerer <christian.timmerer@itec.uni-klu.ac.at>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published
* by the Free Software Foundation; either version 2.1 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
*****************************************************************************/
#ifndef ATTRIBUTENOTPRESENTEXCEPTION_H_
#define ATTRIBUTENOTPRESENTEXCEPTION_H_
#include <stdexcept>
namespace dash
{
namespace exception
{
class AttributeNotPresentException : public std::exception
{
public:
AttributeNotPresentException() : std::exception() {}
};
}
}
#endif /* ATTRIBUTENOTPRESENTEXCEPTION_H_ */
......@@ -27,8 +27,9 @@
#include "BasicCMManager.h"
#include <cassert>
using namespace dash::mpd;
using namespace dash::exception;
BasicCMManager::BasicCMManager (MPD *mpd)
{
......@@ -60,7 +61,7 @@ Representation* BasicCMManager::getBestRepresentation (Period *period)
{
std::vector<Group *> groups = period->getGroups();
long bitrate = 0;
int bitrate = 0;
Representation *best = NULL;
for(size_t i = 0; i < groups.size(); i++)
......@@ -68,22 +69,16 @@ Representation* BasicCMManager::getBestRepresentation (Period *period)
std::vector<Representation *> reps = groups.at(i)->getRepresentations();
for(size_t j = 0; j < reps.size(); j++)
{
try
{
long currentBitrate = reps.at(j)->getBandwidth();
if(currentBitrate > bitrate)
{
bitrate = currentBitrate;
best = reps.at(j);
}
}
catch(AttributeNotPresentException &e)
int currentBitrate = reps.at(j)->getBandwidth();
assert( currentBitrate != -1 );
if( currentBitrate > bitrate)
{
/* TODO DEBUG */
bitrate = currentBitrate;
best = reps.at(j);
}
}
}
return best;
}
Period* BasicCMManager::getFirstPeriod ()
......@@ -95,41 +90,35 @@ Period* BasicCMManager::getFirstPeriod ()
return periods.at(0);
}
Representation* BasicCMManager::getRepresentation (Period *period, long bitrate)
{
std::vector<Group *> groups = period->getGroups();
Representation *best = NULL;
long bestDif = -1;
int bestDif = -1;
for(size_t i = 0; i < groups.size(); i++)
{
std::vector<Representation *> reps = groups.at(i)->getRepresentations();
for(size_t j = 0; j < reps.size(); j++)
{
try
{
long currentBitrate = reps.at(j)->getBandwidth();
long dif = bitrate - currentBitrate;
int currentBitrate = reps.at(j)->getBandwidth();
assert( currentBitrate != -1 );
int dif = bitrate - currentBitrate;
if(bestDif == -1)
if( bestDif == -1 )
{
bestDif = dif;
best = reps.at(j);
}
else
{
if ( dif >= 0 && dif < bestDif )
{
bestDif = dif;
best = reps.at(j);
}
else
{
if(dif >= 0 && dif < bestDif)
{
bestDif = dif;
best = reps.at(j);
}
}
}
catch(AttributeNotPresentException &e)
{
/* TODO DEBUG */
}
}
}
......
......@@ -36,7 +36,6 @@
#include "mpd/SegmentInfo.h"
#include "mpd/Segment.h"
#include "mpd/IMPDManager.h"
#include "exceptions/AttributeNotPresentException.h"
namespace dash
{
......
......@@ -28,7 +28,6 @@
#include <vlc_arrays.h>
using namespace dash::mpd;
using namespace dash::exception;
Group::Group() :
subsegmentAlignmentFlag( false )
......
......@@ -31,7 +31,6 @@
#include "mpd/Representation.h"
#include "mpd/CommonAttributesElements.h"
#include "exceptions/AttributeNotPresentException.h"
namespace dash
{
......
......@@ -28,7 +28,6 @@
#include "MPD.h"
using namespace dash::mpd;
using namespace dash::exception;
MPD::MPD () :
profile( dash::mpd::UnknownProfile ),
......
......@@ -32,7 +32,6 @@
#include "mpd/Period.h"
#include "mpd/BaseUrl.h"
#include "mpd/ProgramInformation.h"
#include "exceptions/AttributeNotPresentException.h"
#include "mpd/IMPDManager.h"
namespace dash
......
......@@ -28,7 +28,6 @@
#include "ProgramInformation.h"
using namespace dash::mpd;
using namespace dash::exception;
const std::string &ProgramInformation::getSource() const
{
......
......@@ -28,8 +28,6 @@
#include <string>
#include <map>
#include "exceptions/AttributeNotPresentException.h"
namespace dash
{
namespace mpd
......
......@@ -46,7 +46,8 @@ namespace dash
/*
* @return The bitrate required for this representation
* in Bytes per seconds.
* -1 if an error occurs.
* Will be a valid value, as the parser refuses Representation
* without bandwith.
*/
int getBandwidth () const;
void setBandwidth ( int bandwidth );
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment