Chromium Code Reviews| Index: third_party/WebKit/Source/modules/webaudio/ConvolverNode.cpp |
| diff --git a/third_party/WebKit/Source/modules/webaudio/ConvolverNode.cpp b/third_party/WebKit/Source/modules/webaudio/ConvolverNode.cpp |
| index 70054e847f5591d88ca46530f79bbe8d215b3083..a7b2f1ff0ccebf66b0ad059580332ac15c48556f 100644 |
| --- a/third_party/WebKit/Source/modules/webaudio/ConvolverNode.cpp |
| +++ b/third_party/WebKit/Source/modules/webaudio/ConvolverNode.cpp |
| @@ -28,6 +28,7 @@ |
| #include "modules/webaudio/AudioNodeInput.h" |
| #include "modules/webaudio/AudioNodeOutput.h" |
| #include "modules/webaudio/ConvolverNode.h" |
| +#include "modules/webaudio/ConvolverOptions.h" |
| #include "platform/audio/Reverb.h" |
| #include "wtf/PtrUtil.h" |
| #include <memory> |
| @@ -185,6 +186,23 @@ ConvolverNode* ConvolverNode::create(BaseAudioContext& context, ExceptionState& |
| return new ConvolverNode(context); |
| } |
| +ConvolverNode* ConvolverNode::create(BaseAudioContext* context, const ConvolverOptions& options, ExceptionState& exceptionState) |
| +{ |
| + ConvolverNode* node = create(*context, exceptionState); |
| + |
| + if (!node) |
| + return node; |
|
hongchan
2016/09/12 18:56:32
return nullptr;
|
| + |
| + node->handleChannelOptions(options, exceptionState); |
| + |
| + // It is important to set normalize first because setting the buffer will |
| + // examing the normalize attribute to see if normalization needs to be done. |
| + node->setNormalize(!options.disableNormalization()); |
| + if (options.hasBuffer()) |
| + node->setBuffer(options.buffer(), exceptionState); |
| + return node; |
| +} |
| + |
| ConvolverHandler& ConvolverNode::convolverHandler() const |
| { |
| return static_cast<ConvolverHandler&>(handler()); |