Move ServerDescription into its own header.
[dcpomatic.git] / src / lib / config.cc
index 657178eba68eaa5fdb0fea66f08741dd42fbb8a0..6a3734dcc7091171290d070a8ffba0c8e0823c54 100644 (file)
@@ -22,6 +22,7 @@
 #include "filter.h"
 #include "ratio.h"
 #include "types.h"
+#include "log.h"
 #include "dcp_content_type.h"
 #include "cinema_sound_processor.h"
 #include "colour_conversion.h"
@@ -69,6 +70,7 @@ Config::set_defaults ()
        _server_port_base = 6192;
        _use_any_servers = true;
        _servers.clear ();
+       _only_servers_encode = false;
        _tms_protocol = PROTOCOL_SCP;
        _tms_ip = "";
        _tms_path = ".";
@@ -155,6 +157,7 @@ Config::read ()
                }
        }
 
+       _only_servers_encode = f.optional_bool_child ("OnlyServersEncode").get_value_or (false);
        _tms_protocol = static_cast<Protocol> (f.optional_number_child<int> ("TMSProtocol").get_value_or (static_cast<int> (PROTOCOL_SCP)));
        _tms_ip = f.string_child ("TMSIP");
        _tms_path = f.string_child ("TMSPath");
@@ -188,6 +191,8 @@ Config::read ()
                _dcp_issuer = f.string_child ("DCPIssuer");
        }
 
+       _dcp_creator = f.optional_string_child ("DCPCreator").get_value_or ("");
+
        if (version && version.get() >= 2) {
                _default_isdcf_metadata = ISDCFMetadata (f.node_child ("ISDCFMetadata"));
        } else {
@@ -320,6 +325,7 @@ Config::write () const
                root->add_child("Server")->add_child_text (*i);
        }
 
+       root->add_child("OnlyServersEncode")->add_child_text (_only_servers_encode ? "1" : "0");
        root->add_child("TMSProtocol")->add_child_text (raw_convert<string> (_tms_protocol));
        root->add_child("TMSIP")->add_child_text (_tms_ip);
        root->add_child("TMSPath")->add_child_text (_tms_path);
@@ -338,6 +344,7 @@ Config::write () const
                root->add_child("DefaultDCPContentType")->add_child_text (_default_dcp_content_type->isdcf_name ());
        }
        root->add_child("DCPIssuer")->add_child_text (_dcp_issuer);
+       root->add_child("DCPCreator")->add_child_text (_dcp_creator);
 
        _default_isdcf_metadata.as_xml (root->add_child ("ISDCFMetadata"));