X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fshuffler.h;h=476f571b4571d88fef4d14eba5e5aaf56afef15d;hb=5723d8d8518ad1cc0fef8bcc34a47671ab959fb3;hp=2c1d0677f9747000de688cf5e70428b8e744e996;hpb=a0eff2446835a2a29d751a4810fe182c486a2eb6;p=dcpomatic.git diff --git a/src/lib/shuffler.h b/src/lib/shuffler.h index 2c1d0677f..476f571b4 100644 --- a/src/lib/shuffler.h +++ b/src/lib/shuffler.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2018 Carl Hetherington + Copyright (C) 2018-2021 Carl Hetherington This file is part of DCP-o-matic. @@ -18,20 +18,40 @@ */ -#include "types.h" + +#ifndef DCPOMATIC_SHUFFLER_H +#define DCPOMATIC_SHUFFLER_H + + #include "content_video.h" -#include "video_adjuster.h" +#include "types.h" #include + +struct shuffler_test5; + class Piece; -class Shuffler : public VideoAdjuster + +class Shuffler { public: void clear (); + void flush (); + void video (std::weak_ptr, ContentVideo video); + + boost::signals2::signal, ContentVideo)> Video; - void video (boost::weak_ptr, ContentVideo video); + typedef std::pair, ContentVideo> Store; private: + friend struct ::shuffler_test5; + + std::list _store; boost::optional _last; + static int const _max_size; }; + + +#endif +