X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fconfig.h;h=011906a410abf9d1a5477f8a45a54e97c792033e;hb=c4ac1ba47652884a647103ec49b2de4c0b6e60a9;hp=2ebfef84d5a9d8a7c196cb04ca57e7b8919ae979;hpb=2d48fee30e323dfea9cc331f881637d91ee0895a;p=dcpomatic.git diff --git a/src/lib/config.h b/src/lib/config.h index 2ebfef84d..011906a41 100644 --- a/src/lib/config.h +++ b/src/lib/config.h @@ -27,6 +27,7 @@ #include "isdcf_metadata.h" #include "types.h" +#include "edid.h" #include #include #include @@ -77,6 +78,7 @@ public: SOUND_OUTPUT, INTERFACE_COMPLEXITY, PLAYER_DCP_DIRECTORY, + HISTORY, #ifdef DCPOMATIC_VARIANT_SWAROOP PLAYER_BACKGROUND_IMAGE, #endif @@ -497,8 +499,32 @@ public: boost::optional player_background_image () const { return _player_background_image; } + + std::string kdm_server_url () const { + return _kdm_server_url; + } + + std::string player_watermark_theatre () const { + return _player_watermark_theatre; + } + + int player_watermark_period () const { + return _player_watermark_period; + } + + int player_watermark_duration () const { + return _player_watermark_duration; + } + + std::vector required_monitors () const { + return _required_monitors; + } #endif + bool allow_spl_editing () const { + return _allow_spl_editing; + } + /* SET (mostly) */ void set_master_encoding_threads (int n) { @@ -957,8 +983,32 @@ public: _player_background_image = boost::none; changed (PLAYER_BACKGROUND_IMAGE); } + + void set_kdm_server_url (std::string s) { + maybe_set (_kdm_server_url, s); + } + + void set_player_watermark_theatre (std::string p) { + maybe_set (_player_watermark_theatre, p); + } + + void set_player_watermark_period (int minutes) { + maybe_set (_player_watermark_period, minutes); + } + + void set_player_watermark_duration (int milliseconds) { + maybe_set (_player_watermark_duration, milliseconds); + } + + void set_required_monitors (std::vector monitors) { + maybe_set (_required_monitors, monitors); + } #endif + void set_allow_spl_editing (bool s) { + maybe_set (_allow_spl_editing, s); + } + void changed (Property p = OTHER); boost::signals2::signal Changed; /** Emitted if read() failed on an existing Config file. There is nothing @@ -977,6 +1027,7 @@ public: void write_cinemas () const; void link (boost::filesystem::path new_file) const; void copy_and_link (boost::filesystem::path new_file) const; + bool have_write_permission () const; void save_template (boost::shared_ptr film, std::string name) const; bool existing_template (std::string name) const; @@ -990,13 +1041,13 @@ public: static void restore_defaults (); static bool have_existing (std::string); static boost::filesystem::path config_file (); + static boost::filesystem::path path (std::string file, bool create_directories = true); /** If set, this overrides the standard path (in home, Library, AppData or wherever) for config.xml and cinemas.xml */ static boost::optional override_path; private: Config (); - static boost::filesystem::path path (std::string file, bool create_directories = true); void read (); void set_defaults (); void set_kdm_email_to_default (); @@ -1153,7 +1204,15 @@ private: boost::optional _player_kdm_directory; #ifdef DCPOMATIC_VARIANT_SWAROOP boost::optional _player_background_image; + std::string _kdm_server_url; + std::string _player_watermark_theatre; + /** watermark period in minutes */ + int _player_watermark_period; + /** watermark duration in milliseconds */ + int _player_watermark_duration; + std::vector _required_monitors; #endif + bool _allow_spl_editing; static int const _current_version;