Use dcp::file_to_string().
[dcpomatic.git] / src / lib / empty.h
index 3c676deeb6b2f4573537c2a45aea56fd6c203096..145b84091a91520a026228e87d274d8aee2825e1 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2017 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2018-2021 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
 
 */
 
+
+#ifndef DCPOMATIC_EMPTY_H
+#define DCPOMATIC_EMPTY_H
+
+
 #include "playlist.h"
 #include "dcpomatic_time.h"
 #include "content_part.h"
 #include <list>
 
+
 struct empty_test1;
+struct empty_test2;
+struct empty_test3;
+struct empty_test_with_overlapping_content;
+struct player_subframe_test;
+
 
 class Empty
 {
 public:
        Empty () {}
-       Empty (boost::shared_ptr<const Playlist> playlist, boost::function<boost::shared_ptr<ContentPart> (Content *)> part);
+       Empty (std::shared_ptr<const Film> film, std::shared_ptr<const Playlist> playlist, std::function<bool (std::shared_ptr<const Content>)> part, dcpomatic::DCPTime length);
 
-       DCPTime position () const {
+       dcpomatic::DCPTime position () const {
                return _position;
        }
 
-       DCPTimePeriod period_at_position () const;
+       dcpomatic::DCPTimePeriod period_at_position () const;
 
        bool done () const;
 
-       void set_position (DCPTime amount);
+       void set_position (dcpomatic::DCPTime amount);
 
 private:
        friend struct ::empty_test1;
+       friend struct ::empty_test2;
+       friend struct ::empty_test3;
+       friend struct ::empty_test_with_overlapping_content;
+       friend struct ::player_subframe_test;
 
-       std::list<DCPTimePeriod> _periods;
-       DCPTime _position;
+       std::list<dcpomatic::DCPTimePeriod> _periods;
+       dcpomatic::DCPTime _position;
 };
+
+
+#endif