- list<cxml::NodePtr> cc = f.node_children ("ColourConversion");
-
- if (!cc.empty ()) {
- _colour_conversions.clear ();
- }
-
- try {
- for (list<cxml::NodePtr>::iterator i = cc.begin(); i != cc.end(); ++i) {
- /* This is a bit of a hack; use 32 (the first Film state file version for the 2.x branch)
- for version 2 and 10 (the current Film state version for the 1.x branch) for version 1.
- */
- _colour_conversions.push_back (PresetColourConversion (*i, version == 2 ? 32 : 10));
- }
- } catch (cxml::Error) {
- /* Probably failed to load an old-style ColourConversion tag; just give up */
- _colour_conversions.push_back (PresetColourConversion (_("sRGB"), dcp::ColourConversion::srgb_to_xyz ()));
- _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), dcp::ColourConversion::rec709_to_xyz ()));
- }
-
- list<cxml::NodePtr> cin = f.node_children ("Cinema");
- for (list<cxml::NodePtr>::iterator i = cin.begin(); i != cin.end(); ++i) {
- /* Slightly grotty two-part construction of Cinema here so that we can use
- shared_from_this.
- */
- shared_ptr<Cinema> cinema (new Cinema (*i));
- cinema->read_screens (*i);
- _cinemas.push_back (cinema);
- }