Primitive auto-crop (#1477).
[dcpomatic.git] / src / lib / config.h
index 2ad201c35e76d0849a39f8a38b5e102bdb767a81..40497e2193e1d1ce8b9bce4fa4cb95dfbc194339 100644 (file)
@@ -91,6 +91,7 @@ public:
                HISTORY,
                SHOW_EXPERIMENTAL_AUDIO_PROCESSORS,
                AUDIO_MAPPING,
+               AUTO_CROP_THRESHOLD,
                OTHER
        };
 
@@ -147,11 +148,11 @@ public:
                return _tms_password;
        }
 
-       std::list<std::shared_ptr<Cinema> > cinemas () const {
+       std::list<std::shared_ptr<Cinema>> cinemas () const {
                return _cinemas;
        }
 
-       std::list<std::shared_ptr<DKDMRecipient> > dkdm_recipients () const {
+       std::list<std::shared_ptr<DKDMRecipient>> dkdm_recipients () const {
                return _dkdm_recipients;
        }
 
@@ -167,6 +168,10 @@ public:
                return _allow_any_container;
        }
 
+       bool allow_96khz_audio () const {
+               return _allow_96khz_audio;
+       }
+
        bool show_experimental_audio_processors () const {
                return _show_experimental_audio_processors;
        }
@@ -567,6 +572,9 @@ public:
                return _default_kdm_type;
        }
 
+       double auto_crop_threshold () const {
+               return _auto_crop_threshold;
+       }
 
        /* SET (mostly) */
 
@@ -651,6 +659,10 @@ public:
                maybe_set (_allow_any_container, a);
        }
 
+       void set_allow_96hhz_audio (bool a) {
+               maybe_set (_allow_96khz_audio, a);
+       }
+
        void set_show_experimental_audio_processors (bool e) {
                maybe_set (_show_experimental_audio_processors, e, SHOW_EXPERIMENTAL_AUDIO_PROCESSORS);
        }
@@ -1088,6 +1100,10 @@ public:
                maybe_set (_default_kdm_type, type);
        }
 
+       void set_auto_crop_threshold (double threshold) {
+               maybe_set (_auto_crop_threshold, threshold, AUTO_CROP_THRESHOLD);
+       }
+
        void changed (Property p = OTHER);
        boost::signals2::signal<void (Property)> Changed;
        /** Emitted if read() failed on an existing Config file.  There is nothing
@@ -1108,7 +1124,7 @@ public:
 
        static boost::signals2::signal<bool (BadReason)> Bad;
 
-       void write () const;
+       void write () const override;
        void write_config () const;
        void write_cinemas () const;
        void write_dkdm_recipients () const;
@@ -1135,7 +1151,7 @@ public:
 
 private:
        Config ();
-       void read ();
+       void read () override;
        void set_defaults ();
        void set_kdm_email_to_default ();
        void set_notification_email_to_default ();
@@ -1199,6 +1215,7 @@ private:
            https://www.dcpomatic.com/forum/viewtopic.php?f=2&t=1119&p=4468
        */
        bool _allow_any_container;
+       bool _allow_96khz_audio;
        /** Offer the upmixers in the audio processor settings */
        bool _show_experimental_audio_processors;
        boost::optional<std::string> _language;
@@ -1222,8 +1239,8 @@ private:
        */
        boost::optional<boost::filesystem::path> _default_kdm_directory;
        bool _upload_after_make_dcp;
-       std::list<std::shared_ptr<Cinema> > _cinemas;
-       std::list<std::shared_ptr<DKDMRecipient> > _dkdm_recipients;
+       std::list<std::shared_ptr<Cinema>> _cinemas;
+       std::list<std::shared_ptr<DKDMRecipient>> _dkdm_recipients;
        std::string _mail_server;
        int _mail_port;
        EmailProtocol _mail_protocol;
@@ -1307,6 +1324,7 @@ private:
        bool _write_kdms_to_disk;
        bool _email_kdms;
        dcp::Formulation _default_kdm_type;
+       double _auto_crop_threshold;
 
        static int const _current_version;