summaryrefslogtreecommitdiff
path: root/libs/ardour/enums.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-04-27 20:57:48 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-04-27 20:57:48 +0000
commitf78913cc99ffd13001b4c4daf625391be77e79d0 (patch)
tree7576a54e9312d9c3bbfd490671c3b2b6702a5c51 /libs/ardour/enums.cc
parentd1af0b89a847fbde9a30a95e0198380ff6f4e68d (diff)
Crossfades: default xfades are now constant-power, -3dB rule, other options are constant power(-6dB) rule or use existing region fade shape as is; provide GUI control over options; fix some inconsistent behaviour regarding xfades when relayering
git-svn-id: svn://localhost/ardour2/branches/3.0@12113 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/enums.cc')
-rw-r--r--libs/ardour/enums.cc23
1 files changed, 23 insertions, 0 deletions
diff --git a/libs/ardour/enums.cc b/libs/ardour/enums.cc
index 4559ed457d..eea971e197 100644
--- a/libs/ardour/enums.cc
+++ b/libs/ardour/enums.cc
@@ -73,6 +73,7 @@ setup_enum_writer ()
RemoteModel _RemoteModel;
DenormalModel _DenormalModel;
CrossfadeModel _CrossfadeModel;
+ CrossfadeChoice _CrossfadeChoice;
InsertMergePolicy _InsertMergePolicy;
ListenPosition _ListenPosition;
SampleFormat _SampleFormat;
@@ -257,6 +258,11 @@ setup_enum_writer ()
REGISTER_ENUM (ShortCrossfade);
REGISTER (_CrossfadeModel);
+ REGISTER_ENUM (RegionFades);
+ REGISTER_ENUM (ConstantPowerMinus3dB);
+ REGISTER_ENUM (ConstantPowerMinus6dB);
+ REGISTER (_CrossfadeChoice);
+
REGISTER_ENUM (InsertMergeReject);
REGISTER_ENUM (InsertMergeRelax);
REGISTER_ENUM (InsertMergeReplace);
@@ -411,6 +417,8 @@ setup_enum_writer ()
REGISTER_ENUM (FadeSlow);
REGISTER_ENUM (FadeLogA);
REGISTER_ENUM (FadeLogB);
+ REGISTER_ENUM (FadeConstantPowerMinus3dB);
+ REGISTER_ENUM (FadeConstantPowerMinus6dB);
REGISTER (_FadeShape);
REGISTER_CLASS_ENUM (Diskstream, Recordable);
@@ -732,6 +740,21 @@ 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, CrossfadeChoice& var)
+{
+ std::string s;
+ o >> s;
+ var = (CrossfadeChoice) string_2_enum (s, var);
+ return o;
+}
+
+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;