projects
/
dcpomatic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
pot/merge.
[dcpomatic.git]
/
src
/
lib
/
shuffler.h
diff --git
a/src/lib/shuffler.h
b/src/lib/shuffler.h
index 2c1d0677f9747000de688cf5e70428b8e744e996..4d1404560f2dc09ce597273a15b825d3b9137042 100644
(file)
--- a/
src/lib/shuffler.h
+++ b/
src/lib/shuffler.h
@@
-1,5
+1,5
@@
/*
/*
- Copyright (C) 2018 Carl Hetherington <cth@carlh.net>
+ Copyright (C) 2018
-2021
Carl Hetherington <cth@carlh.net>
This file is part of DCP-o-matic.
This file is part of DCP-o-matic.
@@
-18,20
+18,39
@@
*/
*/
-#include "types.h"
+
+#ifndef DCPOMATIC_SHUFFLER_H
+#define DCPOMATIC_SHUFFLER_H
+
+
#include "content_video.h"
#include "content_video.h"
-#include "video_adjuster.h"
#include <boost/signals2.hpp>
#include <boost/signals2.hpp>
+
+struct shuffler_test5;
+
class Piece;
class Piece;
-class Shuffler : public VideoAdjuster
+
+class Shuffler
{
public:
void clear ();
{
public:
void clear ();
+ void flush ();
+ void video (std::weak_ptr<Piece>, ContentVideo video);
- void video (boost::weak_ptr<Piece>, ContentVideo video);
+ boost::signals2::signal<void (std::weak_ptr<Piece>, ContentVideo)> Video;
+
+ typedef std::pair<std::weak_ptr<Piece>, ContentVideo> Store;
private:
private:
+ friend struct ::shuffler_test5;
+
+ std::list<Store> _store;
boost::optional<ContentVideo> _last;
boost::optional<ContentVideo> _last;
+ static int const _max_size;
};
};
+
+
+#endif
+