A few more typo fixes in libardour.
[ardour.git] / libs / ardour / enums.cc
index 042b10adb5ea8d67a05236379c45659ce5fd8d96..6c827923284f4ae63ae0bb04a5a36f925195a1a5 100644 (file)
@@ -20,6 +20,8 @@
 #include "pbd/enumwriter.h"
 #include "midi++/types.h"
 
+#include "evoral/Range.hpp" // shouldn't Evoral have its own enum registration?
+
 #include "ardour/delivery.h"
 #include "ardour/diskstream.h"
 #include "ardour/export_channel.h"
@@ -39,6 +41,7 @@ using namespace std;
 using namespace PBD;
 using namespace ARDOUR;
 using namespace MIDI;
+using namespace Timecode;
 
 namespace ARDOUR {
 
@@ -122,6 +125,7 @@ setup_enum_writer ()
        Session::PostTransportWork _Session_PostTransportWork;
        Session::SlaveState _Session_SlaveState;
        MTC_Status _MIDI_MTC_Status;
+       Evoral::OverlapType _OverlapType;
 
 #define REGISTER(e) enum_writer.register_distinct (typeid(e).name(), i, s); i.clear(); s.clear()
 #define REGISTER_BITS(e) enum_writer.register_bits (typeid(e).name(), i, s); i.clear(); s.clear()
@@ -303,6 +307,7 @@ setup_enum_writer ()
        REGISTER_ENUM (MTC);
        REGISTER_ENUM (JACK);
        REGISTER_ENUM (MIDIClock);
+       REGISTER_ENUM (LTC);
        REGISTER (_SyncSource);
 
        REGISTER_ENUM (Sprung);
@@ -508,6 +513,7 @@ setup_enum_writer ()
 
        REGISTER_CLASS_ENUM (ExportFormatBase, SR_None);
        REGISTER_CLASS_ENUM (ExportFormatBase, SR_Session);
+       REGISTER_CLASS_ENUM (ExportFormatBase, SR_8);
        REGISTER_CLASS_ENUM (ExportFormatBase, SR_22_05);
        REGISTER_CLASS_ENUM (ExportFormatBase, SR_44_1);
        REGISTER_CLASS_ENUM (ExportFormatBase, SR_48);
@@ -578,6 +584,13 @@ setup_enum_writer ()
        REGISTER_ENUM(AudioTime);
        REGISTER_ENUM(MusicTime);
        REGISTER(_PositionLockStyle);
+
+       REGISTER_ENUM (Evoral::OverlapNone);
+       REGISTER_ENUM (Evoral::OverlapInternal);
+       REGISTER_ENUM (Evoral::OverlapStart);
+       REGISTER_ENUM (Evoral::OverlapEnd);
+       REGISTER_ENUM (Evoral::OverlapExternal);
+       REGISTER(_OverlapType);
 }
 
 } /* namespace ARDOUR */
@@ -853,3 +866,17 @@ std::ostream& operator<<(std::ostream& o, const PositionLockStyle& var)
        std::string s = enum_2_string (var);
        return o << s;
 }
+
+std::istream& operator>>(std::istream& o, Evoral::OverlapType& var)
+{
+       std::string s;
+       o >> s;
+       var = (Evoral::OverlapType) string_2_enum (s, var);
+       return o;
+}
+
+std::ostream& operator<<(std::ostream& o, const Evoral::OverlapType& var)
+{
+       std::string s = enum_2_string (var);
+       return o << s;
+}