Use cxml::NodePtr.
authorCarl Hetherington <cth@carlh.net>
Wed, 20 Nov 2013 00:00:51 +0000 (00:00 +0000)
committerCarl Hetherington <cth@carlh.net>
Wed, 20 Nov 2013 00:00:51 +0000 (00:00 +0000)
src/lib/audio_mapping.cc
src/lib/cinema.cc
src/lib/colour_conversion.cc
src/lib/colour_conversion.h
src/lib/config.cc
src/lib/content.cc
src/lib/content_factory.cc
src/lib/content_factory.h
src/lib/ffmpeg_content.cc
src/lib/moving_image_content.cc
src/lib/playlist.cc

index 7a5da7d2a4571445fd8d253393d7043d2f89a790..3620001251ec688857c172c80c2883f1b8add42a 100644 (file)
@@ -64,8 +64,8 @@ AudioMapping::AudioMapping (shared_ptr<const cxml::Node> node)
 {
        _content_channels = node->number_child<int> ("ContentChannels");
        
-       list<shared_ptr<cxml::Node> > const c = node->node_children ("Map");
-       for (list<shared_ptr<cxml::Node> >::const_iterator i = c.begin(); i != c.end(); ++i) {
+       list<cxml::NodePtr> const c = node->node_children ("Map");
+       for (list<cxml::NodePtr>::const_iterator i = c.begin(); i != c.end(); ++i) {
                add ((*i)->number_child<int> ("ContentIndex"), static_cast<libdcp::Channel> ((*i)->number_child<int> ("DCP")));
        }
 }
index eccd46b8434bd5c19ff107acfc915ec2c64cafe2..fca6b6afda36c80c653940eaaaa8819818327b4b 100644 (file)
@@ -37,8 +37,8 @@ Cinema::Cinema (shared_ptr<const cxml::Node> node)
 void
 Cinema::read_screens (shared_ptr<const cxml::Node> node)
 {
-       list<shared_ptr<cxml::Node> > s = node->node_children ("Screen");
-       for (list<shared_ptr<cxml::Node> >::iterator i = s.begin(); i != s.end(); ++i) {
+       list<cxml::NodePtr> s = node->node_children ("Screen");
+       for (list<cxml::NodePtr>::iterator i = s.begin(); i != s.end(); ++i) {
                add_screen (shared_ptr<Screen> (new Screen (*i)));
        }
 }
index 95d267a8c9e26afa3443eac4250a7ffe4dff489b..c3fa05426f3a2877b7b51cbf5d719ee2d2451794 100644 (file)
@@ -61,7 +61,7 @@ ColourConversion::ColourConversion (double i, bool il, double const m[3][3], dou
        }
 }
 
-ColourConversion::ColourConversion (shared_ptr<cxml::Node> node)
+ColourConversion::ColourConversion (cxml::NodePtr node)
        : matrix (3, 3)
 {
        LocaleGuard lg;
@@ -75,8 +75,8 @@ ColourConversion::ColourConversion (shared_ptr<cxml::Node> node)
                }
        }
 
-       list<shared_ptr<cxml::Node> > m = node->node_children ("Matrix");
-       for (list<shared_ptr<cxml::Node> >::iterator i = m.begin(); i != m.end(); ++i) {
+       list<cxml::NodePtr> m = node->node_children ("Matrix");
+       for (list<cxml::NodePtr>::iterator i = m.begin(); i != m.end(); ++i) {
                int const ti = (*i)->number_attribute<int> ("i");
                int const tj = (*i)->number_attribute<int> ("j");
                matrix(ti, tj) = lexical_cast<double> ((*i)->content ());
@@ -154,7 +154,7 @@ PresetColourConversion::PresetColourConversion (string n, double i, bool il, dou
 
 }
 
-PresetColourConversion::PresetColourConversion (shared_ptr<cxml::Node> node)
+PresetColourConversion::PresetColourConversion (cxml::NodePtr node)
        : conversion (node)
 {
        name = node->string_child ("Name");
index 893148466bfcc715b04badc8fa9e109f57852012..fa1a955e1e414806fe84453657e3b09c6c49a03b 100644 (file)
 #include <boost/utility.hpp>
 #include <boost/optional.hpp>
 #include <boost/numeric/ublas/matrix.hpp>
-
-namespace cxml {
-       class Node;
-}
+#include <libcxml/cxml.h>
 
 namespace xmlpp {
        class Node;
@@ -42,7 +39,7 @@ class ColourConversion
 public:
        ColourConversion ();
        ColourConversion (double, bool, double const matrix[3][3], double);
-       ColourConversion (boost::shared_ptr<cxml::Node>);
+       ColourConversion (cxml::NodePtr);
 
        virtual void as_xml (xmlpp::Node *) const;
        std::string identifier () const;
@@ -60,7 +57,7 @@ class PresetColourConversion
 public:
        PresetColourConversion ();
        PresetColourConversion (std::string, double, bool, double const matrix[3][3], double);
-       PresetColourConversion (boost::shared_ptr<cxml::Node>);
+       PresetColourConversion (cxml::NodePtr);
 
        void as_xml (xmlpp::Node *) const;
 
index 777d4114d9c3b9fcfaf14bb46bbe20ecd64a8347..4b6455f51412ed378633f487217918676cbe156c 100644 (file)
@@ -109,8 +109,8 @@ Config::read ()
        boost::optional<bool> u = f.optional_bool_child ("UseAnyServers");
        _use_any_servers = u.get_value_or (true);
 
-       list<shared_ptr<cxml::Node> > servers = f.node_children ("Server");
-       for (list<shared_ptr<cxml::Node> >::iterator i = servers.begin(); i != servers.end(); ++i) {
+       list<cxml::NodePtr> servers = f.node_children ("Server");
+       for (list<cxml::NodePtr>::iterator i = servers.begin(); i != servers.end(); ++i) {
                if ((*i)->node_children("HostName").size() == 1) {
                        _servers.push_back ((*i)->string_child ("HostName"));
                } else {
@@ -147,13 +147,13 @@ Config::read ()
        _default_still_length = f.optional_number_child<int>("DefaultStillLength").get_value_or (10);
        _default_j2k_bandwidth = f.optional_number_child<int>("DefaultJ2KBandwidth").get_value_or (200000000);
 
-       list<shared_ptr<cxml::Node> > cc = f.node_children ("ColourConversion");
+       list<cxml::NodePtr> cc = f.node_children ("ColourConversion");
 
        if (!cc.empty ()) {
                _colour_conversions.clear ();
        }
        
-       for (list<shared_ptr<cxml::Node> >::iterator i = cc.begin(); i != cc.end(); ++i) {
+       for (list<cxml::NodePtr>::iterator i = cc.begin(); i != cc.end(); ++i) {
                _colour_conversions.push_back (PresetColourConversion (*i));
        }
 
@@ -164,8 +164,8 @@ Config::read ()
                _colour_conversions.push_back (PresetColourConversion (_("Rec. 709"), 2.2, false, libdcp::colour_matrix::rec709_to_xyz, 2.6));
        }
 
-       list<shared_ptr<cxml::Node> > cin = f.node_children ("Cinema");
-       for (list<shared_ptr<cxml::Node> >::iterator i = cin.begin(); i != cin.end(); ++i) {
+       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.
                */
index e3ad42560edf82ef0e1870003f46eaa04c5cbfad..a41261998671d3083f54c3fd5c921ddeba7de89e 100644 (file)
@@ -153,7 +153,7 @@ Content::clone () const
        xmlpp::Document doc;
        xmlpp::Node* node = doc.create_root_node ("Content");
        as_xml (node);
-       return content_factory (film, shared_ptr<cxml::Node> (new cxml::Node (node)));
+       return content_factory (film, cxml::NodePtr(new cxml::Node (node)));
 }
 
 string
index d42491f7f58c16f40b4542a11699edbf041bc107..ed9a9e7699da3c22fcef43a854b5c4b9c2edf316 100644 (file)
@@ -28,7 +28,7 @@ using std::string;
 using boost::shared_ptr;
 
 shared_ptr<Content>
-content_factory (shared_ptr<const Film> film, shared_ptr<cxml::Node> node)
+content_factory (shared_ptr<const Film> film, cxml::NodePtr node)
 {
        string const type = node->string_child ("Type");
 
index 93fd98d8346b3902c63e867eff1dfe5b50de0d39..d2f75051a2bd0ef2ff47a32c959adc500da93695 100644 (file)
@@ -19,5 +19,5 @@
 
 class Film;
 
-extern boost::shared_ptr<Content> content_factory (boost::shared_ptr<const Film>, boost::shared_ptr<cxml::Node>);
+extern boost::shared_ptr<Content> content_factory (boost::shared_ptr<const Film>, cxml::NodePtr);
 extern boost::shared_ptr<Content> content_factory (boost::shared_ptr<const Film>, boost::filesystem::path);
index de967c04554cb843c08a8cbb09330078d483e1a6..a6f9e6ac89140fb967ec7e1fa51aedd77978698f 100644 (file)
@@ -59,8 +59,8 @@ FFmpegContent::FFmpegContent (shared_ptr<const Film> f, shared_ptr<const cxml::N
        , AudioContent (f, node)
        , SubtitleContent (f, node)
 {
-       list<shared_ptr<cxml::Node> > c = node->node_children ("SubtitleStream");
-       for (list<shared_ptr<cxml::Node> >::const_iterator i = c.begin(); i != c.end(); ++i) {
+       list<cxml::NodePtr> c = node->node_children ("SubtitleStream");
+       for (list<cxml::NodePtr>::const_iterator i = c.begin(); i != c.end(); ++i) {
                _subtitle_streams.push_back (shared_ptr<FFmpegSubtitleStream> (new FFmpegSubtitleStream (*i)));
                if ((*i)->optional_number_child<int> ("Selected")) {
                        _subtitle_stream = _subtitle_streams.back ();
@@ -68,7 +68,7 @@ FFmpegContent::FFmpegContent (shared_ptr<const Film> f, shared_ptr<const cxml::N
        }
 
        c = node->node_children ("AudioStream");
-       for (list<shared_ptr<cxml::Node> >::const_iterator i = c.begin(); i != c.end(); ++i) {
+       for (list<cxml::NodePtr>::const_iterator i = c.begin(); i != c.end(); ++i) {
                _audio_streams.push_back (shared_ptr<FFmpegAudioStream> (new FFmpegAudioStream (*i)));
                if ((*i)->optional_number_child<int> ("Selected")) {
                        _audio_stream = _audio_streams.back ();
@@ -76,7 +76,7 @@ FFmpegContent::FFmpegContent (shared_ptr<const Film> f, shared_ptr<const cxml::N
        }
 
        c = node->node_children ("Filter");
-       for (list<shared_ptr<cxml::Node> >::iterator i = c.begin(); i != c.end(); ++i) {
+       for (list<cxml::NodePtr>::iterator i = c.begin(); i != c.end(); ++i) {
                _filters.push_back (Filter::from_id ((*i)->content ()));
        }
 
index 14ebfcf2539819ed8b3483fad573062d2d06087b..dd486b0a7943c85899ec5b928edc08bcac2090d1 100644 (file)
@@ -45,8 +45,8 @@ MovingImageContent::MovingImageContent (shared_ptr<const Film> f, shared_ptr<con
        : Content (f, node)
        , VideoContent (f, node)
 {
-       list<shared_ptr<cxml::Node> > c = node->node_children ("File");
-       for (list<shared_ptr<cxml::Node> >::const_iterator i = c.begin(); i != c.end(); ++i) {
+       list<cxml::NodePtr> c = node->node_children ("File");
+       for (list<cxml::NodePtr>::const_iterator i = c.begin(); i != c.end(); ++i) {
                _files.push_back ((*i)->content ());
        }
 }
index 405786050a604773728028585945e59d257b256d..fc06ea9b959ce934cff7cdbcbe37787773435acb 100644 (file)
@@ -116,8 +116,8 @@ Playlist::video_identifier () const
 void
 Playlist::set_from_xml (shared_ptr<const Film> film, shared_ptr<const cxml::Node> node)
 {
-       list<shared_ptr<cxml::Node> > c = node->node_children ("Content");
-       for (list<shared_ptr<cxml::Node> >::iterator i = c.begin(); i != c.end(); ++i) {
+       list<cxml::NodePtr> c = node->node_children ("Content");
+       for (list<cxml::NodePtr>::iterator i = c.begin(); i != c.end(); ++i) {
                _content.push_back (content_factory (film, *i));
        }