Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(77)

Unified Diff: Source/modules/webaudio/DelayNode.cpp

Issue 1026663002: Web Audio: Don't create unnecessary DelayNode object. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/modules/webaudio/DelayNode.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/modules/webaudio/DelayNode.cpp
diff --git a/Source/modules/webaudio/DelayNode.cpp b/Source/modules/webaudio/DelayNode.cpp
index 65b6a88d8b3e1e75f0f531dbc853a51792f8ff4b..53b18f03862c988ddbef05303b76fa5f595d0475 100644
--- a/Source/modules/webaudio/DelayNode.cpp
+++ b/Source/modules/webaudio/DelayNode.cpp
@@ -35,18 +35,23 @@ namespace blink {
const double maximumAllowedDelayTime = 180;
-DelayNode::DelayNode(AudioContext* context, float sampleRate, double maxDelayTime, ExceptionState& exceptionState)
+DelayNode::DelayNode(AudioContext* context, float sampleRate, double maxDelayTime)
: AudioBasicProcessorNode(NodeTypeDelay, context, sampleRate)
haraken 2015/03/20 13:42:01 , m_processor(new DelayProcessor(context, sampleRa
{
+ m_processor = new DelayProcessor(context, sampleRate, 1, maxDelayTime);
+}
+
+DelayNode* DelayNode::create(AudioContext* context, float sampleRate, double maxDelayTime, ExceptionState& exceptionState)
+{
if (maxDelayTime <= 0 || maxDelayTime >= maximumAllowedDelayTime) {
exceptionState.throwDOMException(
NotSupportedError,
"max delay time (" + String::number(maxDelayTime)
+ ") must be between 0 and " + String::number(maximumAllowedDelayTime)
+ ", exclusive.");
- return;
+ return nullptr;
}
- m_processor = new DelayProcessor(context, sampleRate, 1, maxDelayTime);
+ return new DelayNode(context, sampleRate, maxDelayTime);
}
AudioParam* DelayNode::delayTime()
« no previous file with comments | « Source/modules/webaudio/DelayNode.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698