Rename ScreenKDM -> KDMWithMetadata
[dcpomatic.git] / src / lib / dcp_content_type.cc
index 03c1bf59ff207638f4ce018297ddfe68a7e5f891..4fedd366c896c15adae703f09ce38a0f53729a67 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2012 Carl Hetherington <cth@carlh.net>
+    Copyright (C) 2012-2020 Carl Hetherington <cth@carlh.net>
 
     This file is part of DCP-o-matic.
 
@@ -24,7 +24,7 @@
 
 #include "dcp_content_type.h"
 #include "dcpomatic_assert.h"
-#include <cassert>
+#include <boost/foreach.hpp>
 
 #include "i18n.h"
 
@@ -53,14 +53,16 @@ DCPContentType::setup_dcp_content_types ()
        _dcp_content_types.push_back (new DCPContentType (_("Policy"), dcp::POLICY, N_("POL")));
        _dcp_content_types.push_back (new DCPContentType (_("Public Service Announcement"), dcp::PUBLIC_SERVICE_ANNOUNCEMENT, N_("PSA")));
        _dcp_content_types.push_back (new DCPContentType (_("Advertisement"), dcp::ADVERTISEMENT, N_("ADV")));
+       _dcp_content_types.push_back (new DCPContentType (_("Episode"), dcp::EPISODE, N_("EPS")));
+       _dcp_content_types.push_back (new DCPContentType (_("Promo"), dcp::PROMO, N_("PRO")));
 }
 
 DCPContentType const *
-DCPContentType::from_pretty_name (string n)
+DCPContentType::from_isdcf_name (string n)
 {
-       for (vector<DCPContentType const *>::const_iterator i = _dcp_content_types.begin(); i != _dcp_content_types.end(); ++i) {
-               if ((*i)->pretty_name() == n) {
-                       return *i;
+       BOOST_FOREACH (DCPContentType const * i, _dcp_content_types) {
+               if (i->isdcf_name() == n) {
+                       return i;
                }
        }
 
@@ -68,17 +70,19 @@ DCPContentType::from_pretty_name (string n)
 }
 
 DCPContentType const *
-DCPContentType::from_isdcf_name (string n)
+DCPContentType::from_libdcp_kind (dcp::ContentKind kind)
 {
-       for (vector<DCPContentType const *>::const_iterator i = _dcp_content_types.begin(); i != _dcp_content_types.end(); ++i) {
-               if ((*i)->isdcf_name() == n) {
-                       return *i;
+       BOOST_FOREACH (DCPContentType const * i, _dcp_content_types) {
+               if (i->libdcp_kind() == kind) {
+                       return i;
                }
        }
 
+       DCPOMATIC_ASSERT (false);
        return 0;
 }
 
+
 DCPContentType const *
 DCPContentType::from_index (int n)
 {