summaryrefslogtreecommitdiff
path: root/muse2/synti/simpledrums2
diff options
context:
space:
mode:
Diffstat (limited to 'muse2/synti/simpledrums2')
-rw-r--r--muse2/synti/simpledrums2/CMakeLists.txt10
-rw-r--r--muse2/synti/simpledrums2/simpledrums.cpp2
-rw-r--r--muse2/synti/simpledrums2/ssplugin.cpp29
3 files changed, 33 insertions, 8 deletions
diff --git a/muse2/synti/simpledrums2/CMakeLists.txt b/muse2/synti/simpledrums2/CMakeLists.txt
index 172ce616..744023ea 100644
--- a/muse2/synti/simpledrums2/CMakeLists.txt
+++ b/muse2/synti/simpledrums2/CMakeLists.txt
@@ -75,13 +75,15 @@ set (FILES_TO_TRANSLATE
# - use precompiled header files
#
-if ( x${CMAKE_BUILD_TYPE} STREQUAL xrelease )
- SET(SIMPLEDRUMS_OPTFLAGS "-O6")
-endif ( x${CMAKE_BUILD_TYPE} STREQUAL xrelease )
+# Don't override the default optimization. Can be reconsidered
+# according to Mathias' feedback. - Orcan 2012-05-20
+#if ( x${CMAKE_BUILD_TYPE} STREQUAL xrelease )
+# SET(SIMPLEDRUMS_OPTFLAGS "-O6")
+#endif ( x${CMAKE_BUILD_TYPE} STREQUAL xrelease )
set_target_properties ( simpledrums
PROPERTIES PREFIX ""
- COMPILE_FLAGS "${SIMPLEDRUMS_OPTFLAGS} -fvisibility=hidden -include ${PROJECT_BINARY_DIR}/all-pic.h"
+ COMPILE_FLAGS "-fvisibility=hidden -include ${PROJECT_BINARY_DIR}/all-pic.h"
)
##
diff --git a/muse2/synti/simpledrums2/simpledrums.cpp b/muse2/synti/simpledrums2/simpledrums.cpp
index 945abbb0..12e4fd18 100644
--- a/muse2/synti/simpledrums2/simpledrums.cpp
+++ b/muse2/synti/simpledrums2/simpledrums.cpp
@@ -1768,8 +1768,8 @@ bool SimpleSynth::initSendEffect(int id, QString lib, QString name)
QString errorString = "Error loading plugin \"" + plugin->label() + "\"";
guiSendError(errorString.toLatin1().constData());
}
- return success;
SS_TRACE_OUT
+ return success;
}
diff --git a/muse2/synti/simpledrums2/ssplugin.cpp b/muse2/synti/simpledrums2/ssplugin.cpp
index cebf97c7..881594d7 100644
--- a/muse2/synti/simpledrums2/ssplugin.cpp
+++ b/muse2/synti/simpledrums2/ssplugin.cpp
@@ -324,9 +324,11 @@ float LadspaPlugin::defaultValue(int k) const
double val = 1.0;
if (LADSPA_IS_HINT_DEFAULT_MINIMUM(rh))
val = range.LowerBound;
+ else if (LADSPA_IS_HINT_DEFAULT_MAXIMUM(rh))
+ val = range.UpperBound;
else if (LADSPA_IS_HINT_DEFAULT_LOW(rh))
if (LADSPA_IS_HINT_LOGARITHMIC(range.HintDescriptor))
- val = exp(fast_log10(range.LowerBound) * .75 +
+ val = exp(log(range.LowerBound) * .75 +
log(range.UpperBound) * .25);
else
val = range.LowerBound*.75 + range.UpperBound*.25;
@@ -342,8 +344,6 @@ float LadspaPlugin::defaultValue(int k) const
log(range.UpperBound) * .75);
else
val = range.LowerBound*.25 + range.UpperBound*.75;
- else if (LADSPA_IS_HINT_DEFAULT_MAXIMUM(rh))
- val = range.UpperBound;
else if (LADSPA_IS_HINT_DEFAULT_0(rh))
val = 0.0;
else if (LADSPA_IS_HINT_DEFAULT_1(rh))
@@ -352,6 +352,29 @@ float LadspaPlugin::defaultValue(int k) const
val = 100.0;
else if (LADSPA_IS_HINT_DEFAULT_440(rh))
val = 440.0;
+ // No default found. Make one up...
+ else if (LADSPA_IS_HINT_BOUNDED_BELOW(rh) && LADSPA_IS_HINT_BOUNDED_ABOVE(rh))
+ {
+ if (LADSPA_IS_HINT_LOGARITHMIC(rh))
+ val = exp(log(range.LowerBound) * .5 +
+ log(range.UpperBound) * .5);
+ else
+ val = range.LowerBound*.5 + range.UpperBound*.5;
+ }
+ else if (LADSPA_IS_HINT_BOUNDED_BELOW(rh))
+ val = range.LowerBound;
+ else if (LADSPA_IS_HINT_BOUNDED_ABOVE(rh))
+ {
+ // Hm. What to do here... Just try 0.0 or the upper bound if less than zero.
+ //if(range.UpperBound > 0.0)
+ // val = 0.0;
+ //else
+ // val = range.UpperBound;
+ // Instead try this: Adopt an 'attenuator-like' policy, where upper is the default.
+ val = range.UpperBound;
+ return true;
+ }
+
SS_TRACE_OUT
return val;
}