summaryrefslogtreecommitdiff
path: root/src/lib/util.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/util.h')
-rw-r--r--src/lib/util.h13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/lib/util.h b/src/lib/util.h
index 4c8a2b1b7..c168be863 100644
--- a/src/lib/util.h
+++ b/src/lib/util.h
@@ -32,6 +32,7 @@
#include "dcpomatic_time.h"
#include "pixel_quanta.h"
#include "types.h"
+#include <libcxml/cxml.h>
#include <dcp/atmos_asset.h>
#include <dcp/decrypted_kdm.h>
#include <dcp/util.h>
@@ -97,4 +98,16 @@ extern std::string error_details(boost::system::error_code ec);
extern bool contains_assetmap(boost::filesystem::path dir);
extern std::string word_wrap(std::string input, int columns);
+
+template <class T>
+T
+number_attribute(cxml::ConstNodePtr node, std::string name1, std::string name2)
+{
+ auto value = node->optional_number_attribute<T>(name1);
+ if (!value) {
+ value = node->number_attribute<T>(name2);
+ }
+ return *value;
+}
+
#endif