X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fconfig.cc;h=ca8d0bc53c407182c8b39dc0770648574f1d9e51;hb=854f2e5bbb7ffb9758b823af87034033033f3cb8;hp=30f85850d397ca4c60f128c9dca7cf287734b55d;hpb=779ff4ae4d3a906ae5e7befc3e27666b5f91d3a0;p=dcpomatic.git diff --git a/src/lib/config.cc b/src/lib/config.cc index 30f85850d..ca8d0bc53 100644 --- a/src/lib/config.cc +++ b/src/lib/config.cc @@ -1,5 +1,5 @@ /* - Copyright (C) 2012 Carl Hetherington + Copyright (C) 2012-2014 Carl Hetherington This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,7 +23,7 @@ #include #include #include -#include +#include #include #include "config.h" #include "server.h" @@ -70,6 +70,7 @@ Config::Config () ) , _check_for_updates (false) , _check_for_test_updates (false) + , _maximum_j2k_bandwidth (250000000) { _allowed_dcp_frame_rates.push_back (24); _allowed_dcp_frame_rates.push_back (25); @@ -78,9 +79,9 @@ Config::Config () _allowed_dcp_frame_rates.push_back (50); _allowed_dcp_frame_rates.push_back (60); - _colour_conversions.push_back (PresetColourConversion (_("sRGB"), 2.4, true, libdcp::colour_matrix::srgb_to_xyz, 2.6)); - _colour_conversions.push_back (PresetColourConversion (_("sRGB non-linearised"), 2.4, false, libdcp::colour_matrix::srgb_to_xyz, 2.6)); - _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.2, false, libdcp::colour_matrix::rec709_to_xyz, 2.6)); + _colour_conversions.push_back (PresetColourConversion (_("sRGB"), 2.4, true, dcp::colour_matrix::srgb_to_xyz, 2.6)); + _colour_conversions.push_back (PresetColourConversion (_("sRGB non-linearised"), 2.4, false, dcp::colour_matrix::srgb_to_xyz, 2.6)); + _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.2, false, dcp::colour_matrix::rec709_to_xyz, 2.6)); } void @@ -164,7 +165,7 @@ Config::read () /* Loading version 0 (before Rec. 709 was added as a preset). Add it in. */ - _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.2, false, libdcp::colour_matrix::rec709_to_xyz, 2.6)); + _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.2, false, dcp::colour_matrix::rec709_to_xyz, 2.6)); } list cin = f.node_children ("Cinema"); @@ -185,6 +186,8 @@ Config::read () _check_for_updates = f.optional_bool_child("CheckForUpdates").get_value_or (false); _check_for_test_updates = f.optional_bool_child("CheckForTestUpdates").get_value_or (false); + + _maximum_j2k_bandwidth = f.optional_number_child ("MaximumJ2KBandwidth").get_value_or (250000000); } void @@ -362,6 +365,8 @@ Config::write () const root->add_child("CheckForUpdates")->add_child_text (_check_for_updates ? "1" : "0"); root->add_child("CheckForTestUpdates")->add_child_text (_check_for_test_updates ? "1" : "0"); + root->add_child("MaximumJ2KBandwidth")->add_child_text (lexical_cast (_maximum_j2k_bandwidth)); + doc.write_to_file_formatted (file(false).string ()); } @@ -387,3 +392,10 @@ Config::drop () delete _instance; _instance = 0; } + +void +Config::changed () +{ + write (); + Changed (); +}