Bump libsub for libdcp dependency removal.
[dcpomatic.git] / src / lib / dcp_content.h
index 55773b94439217540bc9ea5a916527e7a96cd388..17a9a9386006f70fefa024f95c564af37792eeb0 100644 (file)
 
 
 #include "content.h"
+#include "enum_indexed_vector.h"
+#include "font.h"
 #include <libcxml/cxml.h>
+#include <dcp/content_kind.h>
 #include <dcp/encrypted_kdm.h>
 #include <dcp/rating.h>
 
@@ -121,7 +124,7 @@ public:
         */
        bool reference_text (TextType type) const {
                boost::mutex::scoped_lock lm (_mutex);
-               return _reference_text[static_cast<int>(type)];
+               return _reference_text[type];
        }
 
        bool can_reference_text (std::shared_ptr<const Film> film, TextType type, std::string &) const;
@@ -170,6 +173,8 @@ public:
                return _content_versions;
        }
 
+       void check_font_ids();
+
 private:
        friend struct reels_test5;
 
@@ -205,7 +210,7 @@ private:
         *  rather than by rewrapping.  The types here are the original text types,
         *  not what they are being used for.
         */
-       bool _reference_text[static_cast<int>(TextType::COUNT)];
+       EnumIndexedVector<bool, TextType> _reference_text;
 
        boost::optional<dcp::Standard> _standard;
        boost::optional<dcp::ContentKind> _content_kind;
@@ -222,4 +227,9 @@ private:
 };
 
 
+extern std::string id_for_font_in_reel(std::string id, int reel);
+extern void add_fonts_from_examiner(std::shared_ptr<TextContent> text, std::vector<std::vector<std::shared_ptr<dcpomatic::Font>>> const& fonts);
+
+
+
 #endif