add to LUA API (new Stripable API)
[ardour.git] / libs / ardour / enums.cc
index ad5dc5e6a7a3d2195c24a0eccaeb11ac35c0d2e2..103e42402bd98921a519b07c07fe71f029bad2ba 100644 (file)
@@ -23,7 +23,7 @@
 #include "evoral/Range.hpp" // shouldn't Evoral have its own enum registration?
 
 #include "ardour/delivery.h"
-#include "ardour/diskstream.h"
+#include "ardour/disk_io.h"
 #include "ardour/export_channel.h"
 #include "ardour/export_filename.h"
 #include "ardour/export_format_base.h"
@@ -58,6 +58,7 @@ setup_enum_writer ()
        AlignStyle _AlignStyle;
        AlignChoice _AlignChoice;
        MeterPoint _MeterPoint;
+       DiskIOPoint _DiskIOPoint;
        MeterType _MeterType;
        TrackMode _TrackMode;
        NoteMode _NoteMode;
@@ -96,12 +97,11 @@ setup_enum_writer ()
        IOChange _IOChange;
        AutomationType _AutomationType;
        AutoState _AutoState;
-       AutoStyle _AutoStyle;
        AutoConnectOption _AutoConnectOption;
        TracksAutoNamingRule _TracksAutoNamingRule;
        Session::StateOfTheState _Session_StateOfTheState;
        Source::Flag _Source_Flag;
-       Diskstream::Flag _Diskstream_Flag;
+       DiskIOProcessor::Flag _DiskIOProcessor_Flag;
        Location::Flags _Location_Flags;
        PositionLockStyle _PositionLockStyle;
        TempoSection::Type _TempoSection_Type;
@@ -132,11 +132,12 @@ setup_enum_writer ()
        Session::SlaveState _Session_SlaveState;
        MTC_Status _MIDI_MTC_Status;
        Evoral::OverlapType _OverlapType;
-        BufferingPreset _BufferingPreset;
+       BufferingPreset _BufferingPreset;
        AutoReturnTarget _AutoReturnTarget;
        PresentationInfo::Flag _PresentationInfo_Flag;
        MusicalMode::Type mode;
-
+       MidiPortFlags _MidiPortFlags;
+               
 #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()
 #define REGISTER_ENUM(e) i.push_back (e); s.push_back (#e)
@@ -169,18 +170,6 @@ setup_enum_writer ()
        REGISTER_ENUM (TrimAutomation);
        REGISTER_ENUM (PhaseAutomation);
        REGISTER_ENUM (MonitoringAutomation);
-       REGISTER_ENUM (EQGain);
-       REGISTER_ENUM (EQFrequency);
-       REGISTER_ENUM (EQQ);
-       REGISTER_ENUM (EQShape);
-       REGISTER_ENUM (EQHPF);
-       REGISTER_ENUM (EQEnable);
-       REGISTER_ENUM (CompThreshold);
-       REGISTER_ENUM (CompSpeed);
-       REGISTER_ENUM (CompMode);
-       REGISTER_ENUM (CompMakeup);
-       REGISTER_ENUM (CompRedux);
-       REGISTER_ENUM (CompEnable);
        REGISTER_ENUM (BusSendLevel);
        REGISTER_ENUM (BusSendEnable);
        REGISTER (_AutomationType);
@@ -189,12 +178,9 @@ setup_enum_writer ()
        REGISTER_ENUM (Write);
        REGISTER_ENUM (Touch);
        REGISTER_ENUM (Play);
+       REGISTER_ENUM (Latch);
        REGISTER_BITS (_AutoState);
 
-       REGISTER_ENUM (Absolute);
-       REGISTER_ENUM (Trim);
-       REGISTER_BITS (_AutoStyle);
-
        REGISTER_ENUM (CaptureTime);
        REGISTER_ENUM (ExistingMaterial);
        REGISTER (_AlignStyle);
@@ -211,6 +197,11 @@ setup_enum_writer ()
        REGISTER_ENUM (MeterCustom);
        REGISTER (_MeterPoint);
 
+       REGISTER_ENUM (DiskIOPreFader);
+       REGISTER_ENUM (DiskIOPostFader);
+       REGISTER_ENUM (DiskIOCustom);
+       REGISTER (_DiskIOPoint);
+
        REGISTER_ENUM (MeterMaxSignal);
        REGISTER_ENUM (MeterMaxPeak);
        REGISTER_ENUM (MeterPeak);
@@ -379,8 +370,11 @@ setup_enum_writer ()
 
        REGISTER_ENUM (AudioUnit);
        REGISTER_ENUM (LADSPA);
+       REGISTER_ENUM (LV2);
        REGISTER_ENUM (Windows_VST);
        REGISTER_ENUM (LXVST);
+       REGISTER_ENUM (MacVST);
+       REGISTER_ENUM (Lua);
        REGISTER (_PluginType);
 
        REGISTER_ENUM (MTC);
@@ -404,7 +398,6 @@ setup_enum_writer ()
        REGISTER (_Session_RecordState);
 
        REGISTER_CLASS_ENUM (SessionEvent, SetTransportSpeed);
-       REGISTER_CLASS_ENUM (SessionEvent, SetTrackSpeed);
        REGISTER_CLASS_ENUM (SessionEvent, Locate);
        REGISTER_CLASS_ENUM (SessionEvent, LocateRoll);
        REGISTER_CLASS_ENUM (SessionEvent, LocateRollLocate);
@@ -416,7 +409,6 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (SessionEvent, Overwrite);
        REGISTER_CLASS_ENUM (SessionEvent, SetSyncSource);
        REGISTER_CLASS_ENUM (SessionEvent, Audition);
-       REGISTER_CLASS_ENUM (SessionEvent, InputConfigurationChange);
        REGISTER_CLASS_ENUM (SessionEvent, SetPlayAudioRange);
        REGISTER_CLASS_ENUM (SessionEvent, CancelPlayAudioRange);
        REGISTER_CLASS_ENUM (SessionEvent, RealTimeOperation);
@@ -519,10 +511,10 @@ setup_enum_writer ()
        REGISTER_ENUM(ExistingNewlyCreatedBoth);
        REGISTER (_RegionSelectionAfterSplit);
 
-       REGISTER_CLASS_ENUM (Diskstream, Recordable);
-       REGISTER_CLASS_ENUM (Diskstream, Hidden);
-       REGISTER_CLASS_ENUM (Diskstream, Destructive);
-       REGISTER_BITS (_Diskstream_Flag);
+       REGISTER_CLASS_ENUM (DiskIOProcessor, Recordable);
+       REGISTER_CLASS_ENUM (DiskIOProcessor, Hidden);
+       REGISTER_CLASS_ENUM (DiskIOProcessor, Destructive);
+       REGISTER_BITS (_DiskIOProcessor_Flag);
 
        REGISTER_CLASS_ENUM (Location, IsMark);
        REGISTER_CLASS_ENUM (Location, IsAutoPunch);
@@ -546,6 +538,8 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (AutomationList, Discrete);
        REGISTER_CLASS_ENUM (AutomationList, Linear);
        REGISTER_CLASS_ENUM (AutomationList, Curved);
+       REGISTER_CLASS_ENUM (AutomationList, Logarithmic);
+       REGISTER_CLASS_ENUM (AutomationList, Exponential);
        REGISTER (_AutomationList_InterpolationStyle);
 
        REGISTER_CLASS_ENUM (AnyTime, Timecode);
@@ -674,6 +668,11 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (MidiModel::PatchChangeDiffCommand, Bank);
        REGISTER (_MidiModel_PatchChangeDiffCommand_Property);
 
+       REGISTER_ENUM(MidiPortMusic);
+       REGISTER_ENUM(MidiPortControl);
+       REGISTER_ENUM(MidiPortSelection);
+       REGISTER_BITS(_MidiPortFlags);
+
        REGISTER_ENUM(Linear);
        REGISTER_ENUM(Logarithmic);
        REGISTER(_WaveformScale);
@@ -713,7 +712,6 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (PresentationInfo, MasterOut);
        REGISTER_CLASS_ENUM (PresentationInfo, MonitorOut);
        REGISTER_CLASS_ENUM (PresentationInfo, Auditioner);
-       REGISTER_CLASS_ENUM (PresentationInfo, Selected);
        REGISTER_CLASS_ENUM (PresentationInfo, Hidden);
        REGISTER_CLASS_ENUM (PresentationInfo, OrderSet);
        REGISTER_BITS (_PresentationInfo_Flag);
@@ -759,374 +757,3 @@ setup_enum_writer ()
 }
 
 } /* namespace ARDOUR */
-
-/* deserializing types from ardour/types.h */
-
-std::istream& operator>>(std::istream& o, HeaderFormat& var)
-{
-       std::string s;
-       o >> s;
-       var = (HeaderFormat) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const HeaderFormat& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, SampleFormat& var)
-{
-       std::string s;
-       o >> s;
-       var = (SampleFormat) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const SampleFormat& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, AutoConnectOption& var)
-{
-       std::string s;
-       o >> s;
-       var = (AutoConnectOption) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const AutoConnectOption& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, TracksAutoNamingRule& var)
-{
-       std::string s;
-       o >> s;
-       var = (TracksAutoNamingRule) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const TracksAutoNamingRule& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, MonitorModel& var)
-{
-       std::string s;
-       o >> s;
-       var = (MonitorModel) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const MonitorModel& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, VUMeterStandard& var)
-{
-       std::string s;
-       o >> s;
-       var = (VUMeterStandard) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const VUMeterStandard& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, MeterLineUp& var)
-{
-       std::string s;
-       o >> s;
-       var = (MeterLineUp) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const MeterLineUp& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, PFLPosition& var)
-{
-       std::string s;
-       o >> s;
-       var = (PFLPosition) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const PFLPosition& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, AFLPosition& var)
-{
-       std::string s;
-       o >> s;
-       var = (AFLPosition) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const AFLPosition& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, EditMode& var)
-{
-       std::string s;
-       o >> s;
-       var = (EditMode) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const EditMode& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, ListenPosition& var)
-{
-       std::string s;
-       o >> s;
-       var = (ListenPosition) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const ListenPosition& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, LayerModel& var)
-{
-       std::string s;
-       o >> s;
-       var = (LayerModel) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const LayerModel& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, InsertMergePolicy& var)
-{
-       std::string s;
-       o >> s;
-       var = (InsertMergePolicy) string_2_enum (s, var);
-       return o;
-}
-std::ostream& operator<<(std::ostream& o, const InsertMergePolicy& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, SyncSource& var)
-{
-       std::string s;
-       o >> s;
-       var = (SyncSource) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const SyncSource& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, ShuttleBehaviour& var)
-{
-       std::string s;
-       o >> s;
-       var = (ShuttleBehaviour) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const ShuttleBehaviour& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, ShuttleUnits& var)
-{
-       std::string s;
-       o >> s;
-       var = (ShuttleUnits) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const ShuttleUnits& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, TimecodeFormat& var)
-{
-       std::string s;
-       o >> s;
-       var = (TimecodeFormat) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const TimecodeFormat& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, DenormalModel& var)
-{
-       std::string s;
-       o >> s;
-       var = (DenormalModel) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const DenormalModel& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, WaveformScale& var)
-{
-       std::string s;
-       o >> s;
-       var = (WaveformScale) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const WaveformScale& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-std::istream& operator>>(std::istream& o, WaveformShape& var)
-{
-       std::string s;
-       o >> s;
-       var = (WaveformShape) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const WaveformShape& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, PositionLockStyle& var)
-{
-       std::string s;
-       o >> s;
-       var = (PositionLockStyle) string_2_enum (s, var);
-       return o;
-}
-
-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;
-}
-
-std::istream& operator>>(std::istream& o, FadeShape& var)
-{
-       std::string s;
-       o >> s;
-       var = (FadeShape) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const FadeShape& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, RegionSelectionAfterSplit& var)
-{
-       std::string s;
-       o >> s;
-       var = (RegionSelectionAfterSplit) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const RegionSelectionAfterSplit& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, ARDOUR::BufferingPreset& var)
-{
-       std::string s;
-       o >> s;
-       var = (ARDOUR::BufferingPreset) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const ARDOUR::BufferingPreset& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, AutoReturnTarget& var)
-{
-       std::string s;
-       o >> s;
-       var = (AutoReturnTarget) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const AutoReturnTarget& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}
-
-std::istream& operator>>(std::istream& o, MeterType& var)
-{
-       std::string s;
-       o >> s;
-       var = (MeterType) string_2_enum (s, var);
-       return o;
-}
-
-std::ostream& operator<<(std::ostream& o, const MeterType& var)
-{
-       std::string s = enum_2_string (var);
-       return o << s;
-}