always create short xfades when adding a region based on capture
[ardour.git] / libs / ardour / enums.cc
index d172e65f5fbeb94d3ea2c56960257c1e6804ad91..afe92ed5f7babf961f327241d94aa5ded0a7dc56 100644 (file)
 #include "pbd/enumwriter.h"
 #include "midi++/types.h"
 
-#include "ardour/audiofilesource.h"
-#include "ardour/audioregion.h"
 #include "ardour/delivery.h"
 #include "ardour/diskstream.h"
+#include "ardour/export_channel.h"
 #include "ardour/export_filename.h"
 #include "ardour/export_format_base.h"
 #include "ardour/export_profile_manager.h"
 #include "ardour/io.h"
 #include "ardour/location.h"
 #include "ardour/midi_model.h"
-#include "ardour/midi_track.h"
 #include "ardour/mute_master.h"
-#include "ardour/panner.h"
-#include "ardour/route_group.h"
 #include "ardour/session.h"
+#include "ardour/source.h"
 #include "ardour/track.h"
 #include "ardour/types.h"
 
@@ -52,7 +49,6 @@ setup_enum_writer ()
        vector<int> i;
        vector<string> s;
 
-       OverlapType _OverlapType;
        AlignStyle _AlignStyle;
        AlignChoice _AlignChoice;
        MeterPoint _MeterPoint;
@@ -66,12 +62,14 @@ setup_enum_writer ()
        RegionPoint _RegionPoint;
        Placement _Placement;
        MonitorModel _MonitorModel;
+       MonitorChoice _MonitorChoice;
+       MonitorState _MonitorState;
        PFLPosition _PFLPosition;
        AFLPosition _AFLPosition;
        RemoteModel _RemoteModel;
        DenormalModel _DenormalModel;
        CrossfadeModel _CrossfadeModel;
-       LayerModel _LayerModel;
+       CrossfadeChoice _CrossfadeChoice;
        InsertMergePolicy _InsertMergePolicy;
        ListenPosition _ListenPosition;
        SampleFormat _SampleFormat;
@@ -111,6 +109,7 @@ setup_enum_writer ()
        ExportFormatBase::SampleRate _ExportFormatBase_SampleRate;
        ExportFormatBase::SRCQuality _ExportFormatBase_SRCQuality;
        ExportProfileManager::TimeFormat _ExportProfileManager_TimeFormat;
+       RegionExportChannelFactory::Type _RegionExportChannelFactory_Type;
        Delivery::Role _Delivery_Role;
        IO::Direction _IO_Direction;
        MuteMaster::MutePoint _MuteMaster_MutePoint;
@@ -119,7 +118,6 @@ setup_enum_writer ()
        MidiModel::PatchChangeDiffCommand::Property _MidiModel_PatchChangeDiffCommand_Property;
        WaveformScale _WaveformScale;
        WaveformShape _WaveformShape;
-       QuantizeType _QuantizeType;
        Session::PostTransportWork _Session_PostTransportWork;
        Session::SlaveState _Session_SlaveState;
        MTC_Status _MIDI_MTC_Status;
@@ -129,13 +127,6 @@ setup_enum_writer ()
 #define REGISTER_ENUM(e) i.push_back (e); s.push_back (#e)
 #define REGISTER_CLASS_ENUM(t,e) i.push_back (t::e); s.push_back (#e)
 
-       REGISTER_ENUM (OverlapNone);
-       REGISTER_ENUM (OverlapInternal);
-       REGISTER_ENUM (OverlapStart);
-       REGISTER_ENUM (OverlapEnd);
-       REGISTER_ENUM (OverlapExternal);
-       REGISTER (_OverlapType);
-
        REGISTER_ENUM (GainAutomation);
        REGISTER_ENUM (PanAzimuthAutomation);
        REGISTER_ENUM (PanElevationAutomation);
@@ -228,6 +219,17 @@ setup_enum_writer ()
        REGISTER_ENUM (ExternalMonitoring);
        REGISTER (_MonitorModel);
 
+       REGISTER_ENUM (MonitorInput);
+       REGISTER_ENUM (MonitorDisk);
+       REGISTER_ENUM (MonitorAuto);
+       REGISTER_ENUM (MonitorCue);
+       REGISTER_BITS (_MonitorChoice);
+
+       REGISTER_ENUM (MonitoringInput);
+       REGISTER_ENUM (MonitoringDisk);
+       REGISTER_ENUM (MonitoringSilence);
+       REGISTER_BITS (_MonitorState);
+
        REGISTER_ENUM (PFLFromBeforeProcessors);
        REGISTER_ENUM (PFLFromAfterProcessors);
        REGISTER (_PFLPosition);
@@ -251,10 +253,10 @@ setup_enum_writer ()
        REGISTER_ENUM (ShortCrossfade);
        REGISTER (_CrossfadeModel);
 
-       REGISTER_ENUM (LaterHigher);
-       REGISTER_ENUM (MoveAddHigher);
-       REGISTER_ENUM (AddHigher);
-       REGISTER (_LayerModel);
+       REGISTER_ENUM (RegionFades);
+       REGISTER_ENUM (ConstantPowerMinus3dB);
+       REGISTER_ENUM (ConstantPowerMinus6dB);
+       REGISTER (_CrossfadeChoice);
 
         REGISTER_ENUM (InsertMergeReject);
         REGISTER_ENUM (InsertMergeRelax);
@@ -293,7 +295,8 @@ setup_enum_writer ()
 
        REGISTER_ENUM (AudioUnit);
        REGISTER_ENUM (LADSPA);
-       REGISTER_ENUM (VST);
+       REGISTER_ENUM (Windows_VST);
+       REGISTER_ENUM (LXVST);
        REGISTER (_PluginType);
 
        REGISTER_ENUM (MTC);
@@ -344,9 +347,6 @@ setup_enum_writer ()
        REGISTER (_MIDI_MTC_Status);
 
        REGISTER_CLASS_ENUM (Session, PostTransportStop);
-       REGISTER_CLASS_ENUM (Session, PostTransportDisableRecord);
-       REGISTER_CLASS_ENUM (Session, PostTransportPosition);
-       REGISTER_CLASS_ENUM (Session, PostTransportDidRecord);
        REGISTER_CLASS_ENUM (Session, PostTransportDuration);
        REGISTER_CLASS_ENUM (Session, PostTransportLocate);
        REGISTER_CLASS_ENUM (Session, PostTransportRoll);
@@ -354,7 +354,6 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (Session, PostTransportOverWrite);
        REGISTER_CLASS_ENUM (Session, PostTransportSpeed);
        REGISTER_CLASS_ENUM (Session, PostTransportAudition);
-       REGISTER_CLASS_ENUM (Session, PostTransportScrub);
        REGISTER_CLASS_ENUM (Session, PostTransportReverse);
        REGISTER_CLASS_ENUM (Session, PostTransportInputChange);
        REGISTER_CLASS_ENUM (Session, PostTransportCurveRealloc);
@@ -411,8 +410,8 @@ setup_enum_writer ()
        REGISTER_ENUM (FadeLinear);
        REGISTER_ENUM (FadeFast);
        REGISTER_ENUM (FadeSlow);
-       REGISTER_ENUM (FadeLogA);
-       REGISTER_ENUM (FadeLogB);
+       REGISTER_ENUM (FadeConstantPower);
+       REGISTER_ENUM (FadeSymmetric);
        REGISTER (_FadeShape);
 
        REGISTER_CLASS_ENUM (Diskstream, Recordable);
@@ -525,6 +524,12 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (ExportProfileManager, Frames);
        REGISTER (_ExportProfileManager_TimeFormat);
 
+       REGISTER_CLASS_ENUM (RegionExportChannelFactory, None);
+       REGISTER_CLASS_ENUM (RegionExportChannelFactory, Raw);
+       REGISTER_CLASS_ENUM (RegionExportChannelFactory, Fades);
+       REGISTER_CLASS_ENUM (RegionExportChannelFactory, Processed);
+       REGISTER (_RegionExportChannelFactory_Type);
+
        REGISTER_CLASS_ENUM (Delivery, Insert);
        REGISTER_CLASS_ENUM (Delivery, Send);
        REGISTER_CLASS_ENUM (Delivery, Listen);
@@ -565,11 +570,6 @@ setup_enum_writer ()
        REGISTER_ENUM(Rectified);
        REGISTER(_WaveformShape);
 
-       REGISTER_ENUM(Plain);
-       REGISTER_ENUM(Legato);
-       REGISTER_ENUM(Groove);
-       REGISTER(_QuantizeType);
-
        REGISTER_ENUM(AudioTime);
        REGISTER_ENUM(MusicTime);
        REGISTER(_PositionLockStyle);
@@ -701,46 +701,48 @@ 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::istream& operator>>(std::istream& o, InsertMergePolicy& var)
 {
        std::string s;
        o >> s;
-       var = (LayerModel) string_2_enum (s, var);
+       var = (InsertMergePolicy) string_2_enum (s, var);
        return o;
 }
-
-std::ostream& operator<<(std::ostream& o, const LayerModel& var)
+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, InsertMergePolicy& var)
+std::istream& operator>>(std::istream& o, CrossfadeModel& var)
 {
        std::string s;
        o >> s;
-       var = (InsertMergePolicy) string_2_enum (s, var);
+       var = (CrossfadeModel) string_2_enum (s, var);
        return o;
 }
-std::ostream& operator<<(std::ostream& o, const InsertMergePolicy& var)
+
+std::ostream& operator<<(std::ostream& o, const CrossfadeModel& var)
 {
        std::string s = enum_2_string (var);
        return o << s;
 }
 
-std::istream& operator>>(std::istream& o, CrossfadeModel& var)
+std::istream& operator>>(std::istream& o, CrossfadeChoice& var)
 {
        std::string s;
        o >> s;
-       var = (CrossfadeModel) string_2_enum (s, var);
+       var = (CrossfadeChoice) string_2_enum (s, var);
        return o;
 }
 
-std::ostream& operator<<(std::ostream& o, const CrossfadeModel& var)
+std::ostream& operator<<(std::ostream& o, const CrossfadeChoice& var)
 {
        std::string s = enum_2_string (var);
        return o << s;
 }
+
 std::istream& operator>>(std::istream& o, SyncSource& var)
 {
        std::string s;