vlc | branch: master | Hugo Beauzée-Luyssen <[email protected]> | Thu Nov 24 12:23:11 2011 +0100| [49e90877c6f80254b0dd8cc7559e37e4e99d794b] | committer: Rémi Denis-Courmont
dash: Avoid some copies & useless initializations Signed-off-by: Rémi Denis-Courmont <[email protected]> > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=49e90877c6f80254b0dd8cc7559e37e4e99d794b --- modules/stream_filter/dash/mpd/BasicCMManager.cpp | 3 ++- modules/stream_filter/dash/mpd/BasicCMManager.h | 2 +- modules/stream_filter/dash/mpd/IMPDManager.h | 2 +- modules/stream_filter/dash/mpd/NullManager.cpp | 6 +++--- modules/stream_filter/dash/mpd/NullManager.h | 6 +++++- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/modules/stream_filter/dash/mpd/BasicCMManager.cpp b/modules/stream_filter/dash/mpd/BasicCMManager.cpp index 7f22495..5cd8b7a 100644 --- a/modules/stream_filter/dash/mpd/BasicCMManager.cpp +++ b/modules/stream_filter/dash/mpd/BasicCMManager.cpp @@ -60,10 +60,11 @@ std::vector<ISegment*> BasicCMManager::getSegments (Representation return retSegments; } -std::vector<Period*> BasicCMManager::getPeriods () +const std::vector<Period*>& BasicCMManager::getPeriods () const { return this->mpd->getPeriods(); } + Representation* BasicCMManager::getBestRepresentation (Period *period) { std::vector<Group *> groups = period->getGroups(); diff --git a/modules/stream_filter/dash/mpd/BasicCMManager.h b/modules/stream_filter/dash/mpd/BasicCMManager.h index 9c399c9..ee8072a 100644 --- a/modules/stream_filter/dash/mpd/BasicCMManager.h +++ b/modules/stream_filter/dash/mpd/BasicCMManager.h @@ -51,7 +51,7 @@ namespace dash BasicCMManager (MPD *mpd); virtual ~BasicCMManager (); - std::vector<Period *> getPeriods (); + const std::vector<Period *>& getPeriods () const; Period* getFirstPeriod (); Period* getNextPeriod (Period *period); Representation* getBestRepresentation (Period *period); diff --git a/modules/stream_filter/dash/mpd/IMPDManager.h b/modules/stream_filter/dash/mpd/IMPDManager.h index 1c2b5c7..c5a3e6e 100644 --- a/modules/stream_filter/dash/mpd/IMPDManager.h +++ b/modules/stream_filter/dash/mpd/IMPDManager.h @@ -26,7 +26,7 @@ namespace dash class IMPDManager { public: - virtual std::vector<Period *> getPeriods () = 0; + virtual const std::vector<Period *>& getPeriods () const = 0; virtual Period* getFirstPeriod () = 0; virtual Period* getNextPeriod (Period *period) = 0; virtual Representation* getBestRepresentation (Period *period) = 0; diff --git a/modules/stream_filter/dash/mpd/NullManager.cpp b/modules/stream_filter/dash/mpd/NullManager.cpp index ff1262e..e7fa6ce 100644 --- a/modules/stream_filter/dash/mpd/NullManager.cpp +++ b/modules/stream_filter/dash/mpd/NullManager.cpp @@ -37,9 +37,9 @@ NullManager::~NullManager () { } -std::vector<Period *> NullManager::getPeriods () +const std::vector<Period *>& NullManager::getPeriods () const { - return std::vector<Period *>(); + return this->periods; } Period* NullManager::getFirstPeriod () { @@ -55,7 +55,7 @@ Representation* NullManager::getBestRepresentation (Period *) } std::vector<ISegment *> NullManager::getSegments (Representation *) { - return std::vector<ISegment *>(); + return this->segments; } Representation* NullManager::getRepresentation (Period *, long ) { diff --git a/modules/stream_filter/dash/mpd/NullManager.h b/modules/stream_filter/dash/mpd/NullManager.h index fc17bfa..361ef07 100644 --- a/modules/stream_filter/dash/mpd/NullManager.h +++ b/modules/stream_filter/dash/mpd/NullManager.h @@ -42,12 +42,16 @@ namespace dash NullManager (); virtual ~NullManager(); - std::vector<Period *> getPeriods (); + const std::vector<Period *>& getPeriods () const; Period* getFirstPeriod (); Period* getNextPeriod (Period *period); Representation* getBestRepresentation (Period *period); std::vector<ISegment *> getSegments (Representation *rep); Representation* getRepresentation (Period *period, long bitrate); + + private: + std::vector<Period *> periods; + std::vector<ISegment *> segments; }; } } _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
