summaryrefslogtreecommitdiff
path: root/src/lib/config.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-10-18 13:47:29 +0200
committerCarl Hetherington <cth@carlh.net>2023-10-18 13:47:29 +0200
commit1baae6f052775956bab33a8d9ae9f94066227225 (patch)
tree9c634a1b2914d4bf889e171b73c770469415f799 /src/lib/config.h
parent6eba9bffa2371aa71b8981b1a7bcde0448d7623e (diff)
parentb0c1482f98c7e00634c1bc3dd801e76ce69907e2 (diff)
Merge branch 'grok2' into v2.17.xv2.17.8
This is the DoM support for Aaron Boxer's "grok" GPU J2K encoder, with some cleanups and other assorted/related DoM changes.
Diffstat (limited to 'src/lib/config.h')
-rw-r--r--src/lib/config.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/lib/config.h b/src/lib/config.h
index 0a332bcbb..eaf85451d 100644
--- a/src/lib/config.h
+++ b/src/lib/config.h
@@ -618,6 +618,28 @@ public:
return _allow_smpte_bv20;
}
+#ifdef DCPOMATIC_GROK
+ class Grok
+ {
+ public:
+ Grok() = default;
+ Grok(cxml::ConstNodePtr node);
+
+ void as_xml(xmlpp::Element* node) const;
+
+ bool enable = false;
+ boost::filesystem::path binary_location;
+ int selected = 0;
+ std::string licence_server;
+ int licence_port = 5000;
+ std::string licence;
+ };
+
+ boost::optional<Grok> grok() const {
+ return _grok;
+ }
+#endif
+
int isdcf_name_part_length() const {
return _isdcf_name_part_length;
}
@@ -1199,10 +1221,15 @@ public:
maybe_set(_allow_smpte_bv20, allow, ALLOW_SMPTE_BV20);
}
+#ifdef DCPOMATIC_GROK
+ void set_grok(Grok const& grok);
+#endif
+
void set_isdcf_name_part_length(int length) {
maybe_set(_isdcf_name_part_length, length, ISDCF_NAME_PART_LENGTH);
}
+
void changed (Property p = OTHER);
boost::signals2::signal<void (Property)> Changed;
/** Emitted if read() failed on an existing Config file. There is nothing
@@ -1443,6 +1470,10 @@ private:
bool _allow_smpte_bv20;
int _isdcf_name_part_length;
+#ifdef DCPOMATIC_GROK
+ boost::optional<Grok> _grok;
+#endif
+
ExportConfig _export;
static int const _current_version;