Add to_upper() method to util.{cc,h}
[dcpomatic.git] / src / lib / config.h
index 0e8fccb5330d73a8470faaecd99368aa362da05e..0a48a00e1dfc8a71ac66e77ca26a07d73610e2c4 100644 (file)
@@ -33,6 +33,7 @@
 #include <dcp/name_format.h>
 #include <dcp/certificate_chain.h>
 #include <dcp/encrypted_kdm.h>
+#include <dcp/language_tag.h>
 #include <boost/signals2.hpp>
 #include <boost/filesystem.hpp>
 #include <vector>
@@ -391,6 +392,9 @@ public:
                return _jump_to_selected;
        }
 
+       /* This could be an enum class but we use the enum a lot to index _nagged
+        * so it means a lot of casts.
+        */
        enum Nag {
                NAG_DKDM_CONFIG,
                NAG_ENCRYPTED_METADATA,
@@ -399,6 +403,7 @@ public:
                NAG_IMPORT_DECRYPTION_CHAIN,
                NAG_DELETE_DKDM,
                NAG_32_ON_64,
+               NAG_TOO_MANY_DROPPED_FRAMES,
                NAG_COUNT
        };
 
@@ -540,6 +545,10 @@ public:
                return _minimum_frame_size;
        }
 
+       std::vector<dcp::LanguageTag> custom_languages () const {
+               return _custom_languages;
+       }
+
        /* SET (mostly) */
 
        void set_master_encoding_threads (int n) {
@@ -1055,6 +1064,8 @@ public:
                maybe_set (_minimum_frame_size, size);
        }
 
+       void add_custom_language (dcp::LanguageTag tag);
+
        void changed (Property p = OTHER);
        boost::signals2::signal<void (Property)> Changed;
        /** Emitted if read() failed on an existing Config file.  There is nothing
@@ -1269,6 +1280,7 @@ private:
        boost::optional<boost::filesystem::path> _player_kdm_directory;
        boost::optional<AudioMapping> _audio_mapping;
        int _minimum_frame_size;
+       std::vector<dcp::LanguageTag> _custom_languages;
 
        static int const _current_version;