diff options
| author | Carl Hetherington <cth@carlh.net> | 2019-03-14 22:59:54 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2019-03-17 00:24:27 +0000 |
| commit | 7cbd4f09eaeda373662aaddef90d2d070a564b68 (patch) | |
| tree | 455ba2575f380cd4979dc16672e38a1ca5836825 | |
| parent | 0db53e30cebc38b2e9e0d8b29aa0c1959d6c165b (diff) | |
Add Marker enum.
| -rw-r--r-- | src/types.cc | 57 | ||||
| -rw-r--r-- | src/types.h | 16 |
2 files changed, 73 insertions, 0 deletions
diff --git a/src/types.cc b/src/types.cc index 9af5f119..d27b2ec1 100644 --- a/src/types.cc +++ b/src/types.cc @@ -369,3 +369,60 @@ dcp::content_kind_from_string (string kind) throw BadContentKindError (kind); } + +string +dcp::marker_to_string (dcp::Marker m) +{ + switch (m) { + case FFOC: + return "FFOC"; + case LFOC: + return "LFOC"; + case FFTC: + return "FFTC"; + case LFTC: + return "LFTC"; + case FFOI: + return "FFOI"; + case LFOI: + return "LFOI"; + case FFEC: + return "FFEC"; + case LFEC: + return "LFEC"; + case FFMC: + return "FFMC"; + case LFMC: + return "LFMC"; + } + + DCP_ASSERT (false); +} + +dcp::Marker +dcp::marker_from_string (string s) +{ + if (s == "FFOC") { + return FFOC; + } else if (s == "LFOC") { + return LFOC; + } else if (s == "FFTC") { + return FFTC; + } else if (s == "LFTC") { + return LFTC; + } else if (s == "FFOI") { + return FFOI; + } else if (s == "LFOI") { + return LFOI; + } else if (s == "FFEC") { + return FFEC; + } else if (s == "LFEC") { + return LFEC; + } else if (s == "FFMC") { + return FFMC; + } else if (s == "LFMC") { + return LFMC; + } + + DCP_ASSERT (false); +} diff --git a/src/types.h b/src/types.h index 2652524c..a0965e83 100644 --- a/src/types.h +++ b/src/types.h @@ -276,6 +276,22 @@ const float ASPECT_ADJUST_EPSILON = 1e-3; */ const float ALIGN_EPSILON = 1e-3; +enum Marker { + FFOC, ///< first frame of composition + LFOC, ///< last frame of composition + FFTC, ///< first frame of title credits + LFTC, ///< last frame of title credits + FFOI, ///< first frame of intermission + LFOI, ///< last frame of intermission + FFEC, ///< first frame of end credits + LFEC, ///< last frame of end credits + FFMC, ///< first frame of moving credits + LFMC ///< last frame of moving credits +}; + +std::string marker_to_string (Marker); +Marker marker_from_string (std::string); + } #endif |
