Add string converters for KDM formulations.
authorCarl Hetherington <cth@carlh.net>
Sat, 19 Mar 2022 20:39:58 +0000 (21:39 +0100)
committerCarl Hetherington <cth@carlh.net>
Wed, 20 Apr 2022 18:03:42 +0000 (20:03 +0200)
src/types.cc
src/types.h

index c990479238fbae09db13e533d52bc903fca893a8..d3be8a3d1767eeb08ae06c5c29203302a4ea51cf 100644 (file)
@@ -838,3 +838,38 @@ dcp::used_audio_channels ()
        };
 }
 
+
+string
+dcp::formulation_to_string (dcp::Formulation formulation)
+{
+       switch (formulation) {
+       case Formulation::MODIFIED_TRANSITIONAL_1:
+               return "modified-transitional-1";
+       case Formulation::MULTIPLE_MODIFIED_TRANSITIONAL_1:
+               return "multiple-modified-transitional-1";
+       case Formulation::DCI_ANY:
+               return "dci-any";
+       case Formulation::DCI_SPECIFIC:
+               return "dci-specific";
+       }
+
+       DCP_ASSERT (false);
+}
+
+
+dcp::Formulation
+dcp::string_to_formulation (string formulation)
+{
+       if (formulation == "modified-transitional-1") {
+               return Formulation::MODIFIED_TRANSITIONAL_1;
+       } else if (formulation == "multiple-modified-transitional-1") {
+               return Formulation::MULTIPLE_MODIFIED_TRANSITIONAL_1;
+       } else if (formulation == "dci-any") {
+               return Formulation::DCI_ANY;
+       } else if (formulation == "dci-specific") {
+               return Formulation::DCI_SPECIFIC;
+       }
+
+       DCP_ASSERT (false);
+}
+
index 9fdb93cabad4d96f77a9173b7578a156d667ccd7..9aacdfdbf0c5f8b41f6ee6c0d2945f1bdc038a8e 100644 (file)
@@ -292,6 +292,10 @@ enum class Formulation {
 };
 
 
+std::string formulation_to_string (dcp::Formulation formulation);
+dcp::Formulation string_to_formulation (std::string forumulation);
+
+
 /** @class Colour
  *  @brief An RGB colour
  */