first part of fixing up send/return metering ; make send-controlling faders work...
[ardour.git] / libs / ardour / enums.cc
index 350c6dba9ada4e2fd941cb2f8ddae4ccc77ea1f7..efe72ddb4bea4167c0e4340fb3e542b89bb4f078 100644 (file)
 
 */
 
-#include <pbd/enumwriter.h>
-
-#include <ardour/types.h>
-#include <ardour/session.h>
-#include <ardour/location.h>
-#include <ardour/audiofilesource.h>
-#include <ardour/diskstream.h>
-#include <ardour/audioregion.h>
-#include <ardour/route_group.h>
-#include <ardour/panner.h>
-#include <ardour/track.h>
-#include <ardour/midi_track.h>
-#include <ardour/export_filename.h>
-#include <ardour/export_format_base.h>
-#include <ardour/export_profile_manager.h>
+#include "pbd/enumwriter.h"
+
+#include "ardour/audiofilesource.h"
+#include "ardour/audioregion.h"
+#include "ardour/delivery.h"
+#include "ardour/diskstream.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_track.h"
+#include "ardour/mute_master.h"
+#include "ardour/panner.h"
+#include "ardour/route_group.h"
+#include "ardour/session.h"
+#include "ardour/track.h"
+#include "ardour/types.h"
 
 using namespace std;
 using namespace PBD;
@@ -50,6 +53,7 @@ setup_enum_writer ()
        TrackMode _TrackMode;
        NoteMode _NoteMode;
        ChannelMode _ChannelMode;
+       ColorMode _ColorMode;
        MeterFalloff _MeterFalloff;
        MeterHold _MeterHold;
        EditMode _EditMode;
@@ -60,7 +64,7 @@ setup_enum_writer ()
        DenormalModel _DenormalModel;
        CrossfadeModel _CrossfadeModel;
        LayerModel _LayerModel;
-       SoloModel _SoloModel;
+       ListenPosition _ListenPosition;
        SampleFormat _SampleFormat;
        CDMarkerFormat _CDMarkerFormat;
        HeaderFormat _HeaderFormat;
@@ -68,7 +72,6 @@ setup_enum_writer ()
        SlaveSource _SlaveSource;
        ShuttleBehaviour _ShuttleBehaviour;
        ShuttleUnits _ShuttleUnits;
-       mute_type _mute_type;
        Session::RecordState _Session_RecordState;
        Session::Event::Type _Session_Event_Type;
        SmpteFormat _Session_SmpteFormat;
@@ -82,10 +85,11 @@ setup_enum_writer ()
        AutoConnectOption _AutoConnectOption;
        Session::StateOfTheState _Session_StateOfTheState;
        Route::Flag _Route_Flag;
-       AudioFileSource::Flag _AudioFileSource_Flag;
+       Source::Flag _Source_Flag;
        Diskstream::Flag _Diskstream_Flag;
        Location::Flags _Location_Flags;
        RouteGroup::Flag _RouteGroup_Flag;
+       RouteGroup::Property _RouteGroup_Property;
        Region::Flag _Region_Flag;
        Region::PositionLockStyle _Region_PositionLockStyle;
        Track::FreezeState _Track_FreezeState;
@@ -102,6 +106,9 @@ setup_enum_writer ()
        ExportFormatBase::SampleRate _ExportFormatBase_SampleRate;
        ExportFormatBase::SRCQuality _ExportFormatBase_SRCQuality;
        ExportProfileManager::TimeFormat _ExportProfileManager_TimeFormat;
+       Delivery::Role _Delivery_Role;
+       IO::Direction _IO_Direction;
+       MuteMaster::MutePoint _MuteMaster_MutePoint;
 
 #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()
@@ -151,6 +158,7 @@ setup_enum_writer ()
        REGISTER (_MeterPoint);
 
        REGISTER_ENUM (Normal);
+       REGISTER_ENUM (NonLayered);
        REGISTER_ENUM (Destructive);
        REGISTER (_TrackMode);
 
@@ -163,6 +171,11 @@ setup_enum_writer ()
        REGISTER_ENUM (ForceChannel);
        REGISTER (_ChannelMode);
 
+       REGISTER_ENUM (MeterColors);
+       REGISTER_ENUM (ChannelColors);
+       REGISTER_ENUM (TrackColor);
+       REGISTER (_ColorMode);
+       
        REGISTER_ENUM (MeterFalloffOff);
        REGISTER_ENUM (MeterFalloffSlowest);
        REGISTER_ENUM (MeterFalloffSlow);
@@ -216,9 +229,9 @@ setup_enum_writer ()
        REGISTER_ENUM (AddHigher);
        REGISTER (_LayerModel);
 
-       REGISTER_ENUM (InverseMute);
-       REGISTER_ENUM (SoloBus);
-       REGISTER (_SoloModel);
+       REGISTER_ENUM (AfterFaderListen);
+       REGISTER_ENUM (PreFaderListen);
+       REGISTER (_ListenPosition);
 
        REGISTER_ENUM (AutoConnectPhysical);
        REGISTER_ENUM (AutoConnectMaster);
@@ -319,26 +332,20 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (Session, pullup_Minus4Minus1);
        REGISTER (_Session_PullupFormat);
 
-       REGISTER_ENUM (PRE_FADER);
-       REGISTER_ENUM (POST_FADER);
-       REGISTER_ENUM (CONTROL_OUTS);
-       REGISTER_ENUM (MAIN_OUTS);
-       REGISTER (_mute_type);
-
        REGISTER_CLASS_ENUM (Route, Hidden);
        REGISTER_CLASS_ENUM (Route, MasterOut);
        REGISTER_CLASS_ENUM (Route, ControlOut);
        REGISTER_BITS (_Route_Flag);
 
-       REGISTER_CLASS_ENUM (AudioFileSource, Writable);
-       REGISTER_CLASS_ENUM (AudioFileSource, CanRename);
-       REGISTER_CLASS_ENUM (AudioFileSource, Broadcast);
-       REGISTER_CLASS_ENUM (AudioFileSource, Removable);
-       REGISTER_CLASS_ENUM (AudioFileSource, RemovableIfEmpty);
-       REGISTER_CLASS_ENUM (AudioFileSource, RemoveAtDestroy);
-       REGISTER_CLASS_ENUM (AudioFileSource, NoPeakFile);
-       REGISTER_CLASS_ENUM (AudioFileSource, Destructive);
-       REGISTER_BITS (_AudioFileSource_Flag);
+       REGISTER_CLASS_ENUM (Source, Writable);
+       REGISTER_CLASS_ENUM (Source, CanRename);
+       REGISTER_CLASS_ENUM (Source, Broadcast);
+       REGISTER_CLASS_ENUM (Source, Removable);
+       REGISTER_CLASS_ENUM (Source, RemovableIfEmpty);
+       REGISTER_CLASS_ENUM (Source, RemoveAtDestroy);
+       REGISTER_CLASS_ENUM (Source, NoPeakFile);
+       REGISTER_CLASS_ENUM (Source, Destructive);
+       REGISTER_BITS (_Source_Flag);
 
        REGISTER_CLASS_ENUM (AudioRegion, Linear);
        REGISTER_CLASS_ENUM (AudioRegion, Fast);
@@ -362,12 +369,19 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (Location, IsStart);
        REGISTER_BITS (_Location_Flags);
 
-
        REGISTER_CLASS_ENUM (RouteGroup, Relative);
        REGISTER_CLASS_ENUM (RouteGroup, Active);
        REGISTER_CLASS_ENUM (RouteGroup, Hidden);
        REGISTER_BITS (_RouteGroup_Flag);
 
+       REGISTER_CLASS_ENUM (RouteGroup, Gain);
+       REGISTER_CLASS_ENUM (RouteGroup, Mute);
+       REGISTER_CLASS_ENUM (RouteGroup, Solo);
+       REGISTER_CLASS_ENUM (RouteGroup, RecEnable);
+       REGISTER_CLASS_ENUM (RouteGroup, Select);
+       REGISTER_CLASS_ENUM (RouteGroup, Edit);
+       REGISTER_BITS (_RouteGroup_Property);
+
        REGISTER_CLASS_ENUM (Panner, SameDirection);
        REGISTER_CLASS_ENUM (Panner, OppositeDirection);
        REGISTER (_Panner_LinkDirection);
@@ -390,7 +404,7 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (Region, LeftOfSplit);
        REGISTER_CLASS_ENUM (Region, RightOfSplit);
        REGISTER_CLASS_ENUM (Region, Hidden);
-       REGISTER_CLASS_ENUM (Region, DoNotSaveState);
+       REGISTER_CLASS_ENUM (Region, DoNotSendPropertyChanges);
        REGISTER_BITS (_Region_Flag);
 
        REGISTER_CLASS_ENUM (Region, AudioTime);
@@ -492,4 +506,20 @@ setup_enum_writer ()
        REGISTER_CLASS_ENUM (ExportProfileManager, Frames);
        REGISTER_CLASS_ENUM (ExportProfileManager, Off);
        REGISTER (_ExportProfileManager_TimeFormat);
+
+       REGISTER_CLASS_ENUM (Delivery, Insert);
+       REGISTER_CLASS_ENUM (Delivery, Send);
+       REGISTER_CLASS_ENUM (Delivery, Listen);
+       REGISTER_CLASS_ENUM (Delivery, Main);
+       REGISTER_BITS (_Delivery_Role);
+
+       REGISTER_CLASS_ENUM (MuteMaster, PreFader);
+       REGISTER_CLASS_ENUM (MuteMaster, PostFader);
+       REGISTER_CLASS_ENUM (MuteMaster, Listen);
+       REGISTER_CLASS_ENUM (MuteMaster, Main);
+       REGISTER_BITS (_MuteMaster_MutePoint);
+
+       REGISTER_CLASS_ENUM (IO, Input);
+       REGISTER_CLASS_ENUM (IO, Output);
+       REGISTER (_IO_Direction);
 }