summaryrefslogtreecommitdiff
path: root/src/lib/dcp_text_track.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2018-08-23 01:31:20 +0100
committerCarl Hetherington <cth@carlh.net>2018-08-23 01:31:20 +0100
commit5aa057f73c9b5d0f2a4a1479bd75dee849250265 (patch)
treecbd67a37f15f442de6f81ff29c8caca6a468901a /src/lib/dcp_text_track.cc
parent21e926ddb62165eaf85c719545135a50e93a0e08 (diff)
Basics of selecting 'tracks' for CCAPs.
Diffstat (limited to 'src/lib/dcp_text_track.cc')
-rw-r--r--src/lib/dcp_text_track.cc63
1 files changed, 63 insertions, 0 deletions
diff --git a/src/lib/dcp_text_track.cc b/src/lib/dcp_text_track.cc
new file mode 100644
index 000000000..2d3d9fe10
--- /dev/null
+++ b/src/lib/dcp_text_track.cc
@@ -0,0 +1,63 @@
+/*
+ Copyright (C) 2018 Carl Hetherington <cth@carlh.net>
+
+ This file is part of DCP-o-matic.
+
+ DCP-o-matic is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ DCP-o-matic is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with DCP-o-matic. If not, see <http://www.gnu.org/licenses/>.
+
+*/
+
+#include "dcp_text_track.h"
+#include "compose.hpp"
+#include <string>
+
+using std::string;
+
+DCPTextTrack::DCPTextTrack (cxml::ConstNodePtr node)
+{
+ name = node->string_child("Name");
+ language = node->string_child("Language");
+}
+
+DCPTextTrack::DCPTextTrack (string name_, string language_)
+ : name (name_)
+ , language (language_)
+{
+
+}
+
+string
+DCPTextTrack::summary () const
+{
+ return String::compose("%1 (%2)", name, language);
+}
+
+void
+DCPTextTrack::as_xml (xmlpp::Element* parent) const
+{
+ parent->add_child("Name")->add_child_text(name);
+ parent->add_child("Language")->add_child_text(language);
+}
+
+bool
+operator== (DCPTextTrack const & a, DCPTextTrack const & b)
+{
+ return a.name == b.name && a.language == b.language;
+}
+
+bool
+operator!= (DCPTextTrack const & a, DCPTextTrack const & b)
+{
+ return !(a == b);
+}