Title: [267543] trunk/Source/WebCore
Revision
267543
Author
[email protected]
Date
2020-09-24 12:57:28 -0700 (Thu, 24 Sep 2020)

Log Message

Simplify AudioNode::addInput() / addOutput() call sites
https://bugs.webkit.org/show_bug.cgi?id=216941

Reviewed by Darin Adler.

Simplify AudioNode::addInput() / addOutput() call sites by moving the input / output
node construction from the call site to the function implementation.

* Modules/webaudio/AnalyserNode.cpp:
(WebCore::AnalyserNode::AnalyserNode):
* Modules/webaudio/AudioBasicInspectorNode.cpp:
(WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):
* Modules/webaudio/AudioBasicProcessorNode.cpp:
(WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
* Modules/webaudio/AudioBufferSourceNode.cpp:
(WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
* Modules/webaudio/AudioDestinationNode.cpp:
(WebCore::AudioDestinationNode::AudioDestinationNode):
* Modules/webaudio/AudioNode.cpp:
(WebCore::AudioNode::addInput):
(WebCore::AudioNode::addOutput):
* Modules/webaudio/AudioNode.h:
* Modules/webaudio/ChannelMergerNode.cpp:
(WebCore::ChannelMergerNode::ChannelMergerNode):
* Modules/webaudio/ChannelSplitterNode.cpp:
(WebCore::ChannelSplitterNode::ChannelSplitterNode):
* Modules/webaudio/ConstantSourceNode.cpp:
(WebCore::ConstantSourceNode::ConstantSourceNode):
* Modules/webaudio/ConvolverNode.cpp:
(WebCore::ConvolverNode::ConvolverNode):
* Modules/webaudio/DynamicsCompressorNode.cpp:
(WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
* Modules/webaudio/GainNode.cpp:
(WebCore::GainNode::GainNode):
* Modules/webaudio/MediaElementAudioSourceNode.cpp:
(WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
* Modules/webaudio/MediaStreamAudioSourceNode.cpp:
(WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
* Modules/webaudio/OscillatorNode.cpp:
(WebCore::OscillatorNode::OscillatorNode):
* Modules/webaudio/PannerNode.cpp:
(WebCore::PannerNode::PannerNode):
* Modules/webaudio/ScriptProcessorNode.cpp:
(WebCore::ScriptProcessorNode::ScriptProcessorNode):
* Modules/webaudio/StereoPannerNode.cpp:
(WebCore::StereoPannerNode::StereoPannerNode):
* Modules/webaudio/WebKitAudioPannerNode.cpp:
(WebCore::WebKitAudioPannerNode::WebKitAudioPannerNode):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (267542 => 267543)


--- trunk/Source/WebCore/ChangeLog	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/ChangeLog	2020-09-24 19:57:28 UTC (rev 267543)
@@ -1,5 +1,56 @@
 2020-09-24  Chris Dumez  <[email protected]>
 
+        Simplify AudioNode::addInput() / addOutput() call sites
+        https://bugs.webkit.org/show_bug.cgi?id=216941
+
+        Reviewed by Darin Adler.
+
+        Simplify AudioNode::addInput() / addOutput() call sites by moving the input / output
+        node construction from the call site to the function implementation.
+
+        * Modules/webaudio/AnalyserNode.cpp:
+        (WebCore::AnalyserNode::AnalyserNode):
+        * Modules/webaudio/AudioBasicInspectorNode.cpp:
+        (WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):
+        * Modules/webaudio/AudioBasicProcessorNode.cpp:
+        (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode):
+        * Modules/webaudio/AudioBufferSourceNode.cpp:
+        (WebCore::AudioBufferSourceNode::AudioBufferSourceNode):
+        * Modules/webaudio/AudioDestinationNode.cpp:
+        (WebCore::AudioDestinationNode::AudioDestinationNode):
+        * Modules/webaudio/AudioNode.cpp:
+        (WebCore::AudioNode::addInput):
+        (WebCore::AudioNode::addOutput):
+        * Modules/webaudio/AudioNode.h:
+        * Modules/webaudio/ChannelMergerNode.cpp:
+        (WebCore::ChannelMergerNode::ChannelMergerNode):
+        * Modules/webaudio/ChannelSplitterNode.cpp:
+        (WebCore::ChannelSplitterNode::ChannelSplitterNode):
+        * Modules/webaudio/ConstantSourceNode.cpp:
+        (WebCore::ConstantSourceNode::ConstantSourceNode):
+        * Modules/webaudio/ConvolverNode.cpp:
+        (WebCore::ConvolverNode::ConvolverNode):
+        * Modules/webaudio/DynamicsCompressorNode.cpp:
+        (WebCore::DynamicsCompressorNode::DynamicsCompressorNode):
+        * Modules/webaudio/GainNode.cpp:
+        (WebCore::GainNode::GainNode):
+        * Modules/webaudio/MediaElementAudioSourceNode.cpp:
+        (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode):
+        * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
+        (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
+        * Modules/webaudio/OscillatorNode.cpp:
+        (WebCore::OscillatorNode::OscillatorNode):
+        * Modules/webaudio/PannerNode.cpp:
+        (WebCore::PannerNode::PannerNode):
+        * Modules/webaudio/ScriptProcessorNode.cpp:
+        (WebCore::ScriptProcessorNode::ScriptProcessorNode):
+        * Modules/webaudio/StereoPannerNode.cpp:
+        (WebCore::StereoPannerNode::StereoPannerNode):
+        * Modules/webaudio/WebKitAudioPannerNode.cpp:
+        (WebCore::WebKitAudioPannerNode::WebKitAudioPannerNode):
+
+2020-09-24  Chris Dumez  <[email protected]>
+
         Declare render quantum size constant in AudioUtilities.h
         https://bugs.webkit.org/show_bug.cgi?id=216935
 

Modified: trunk/Source/WebCore/Modules/webaudio/AnalyserNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AnalyserNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AnalyserNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -68,7 +68,7 @@
     : AudioBasicInspectorNode(context)
 {
     setNodeType(NodeTypeAnalyser);
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addOutput(2);
     
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/AudioBasicInspectorNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioBasicInspectorNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioBasicInspectorNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -40,7 +40,7 @@
     : AudioNode(context)
 {
     setNodeType(NodeTypeBasicInspector);
-    addInput(makeUnique<AudioNodeInput>(this));
+    addInput();
 }
 
 // We override pullInputs() as an optimization allowing this node to take advantage of in-place processing,

Modified: trunk/Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -42,8 +42,8 @@
 AudioBasicProcessorNode::AudioBasicProcessorNode(BaseAudioContext& context)
     : AudioNode(context)
 {
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addInput();
+    addOutput(1);
 
     // The subclass must create m_processor.
 }

Modified: trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -97,7 +97,7 @@
     setNodeType(NodeTypeAudioBufferSource);
 
     // Default to mono.  A call to setBuffer() will set the number of output channels to that of the buffer.
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addOutput(1);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/AudioDestinationNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioDestinationNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioDestinationNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -47,7 +47,7 @@
     , m_muted(false)
 {
     setNodeType(NodeTypeDestination);
-    addInput(makeUnique<AudioNodeInput>(this));
+    addInput();
 }
 
 AudioDestinationNode::~AudioDestinationNode()

Modified: trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -158,18 +158,18 @@
         initialize();
 }
 
-void AudioNode::addInput(std::unique_ptr<AudioNodeInput> input)
+void AudioNode::addInput()
 {
     ASSERT(isMainThread());
-    INFO_LOG(LOGIDENTIFIER, input->node()->nodeType());
-    m_inputs.append(WTFMove(input));
+    INFO_LOG(LOGIDENTIFIER);
+    m_inputs.append(makeUnique<AudioNodeInput>(this));
 }
 
-void AudioNode::addOutput(std::unique_ptr<AudioNodeOutput> output)
+void AudioNode::addOutput(unsigned numberOfChannels)
 {
     ASSERT(isMainThread());
-    INFO_LOG(LOGIDENTIFIER, output->node()->nodeType());
-    m_outputs.append(WTFMove(output));
+    INFO_LOG(LOGIDENTIFIER);
+    m_outputs.append(makeUnique<AudioNodeOutput>(this, numberOfChannels));
 }
 
 AudioNodeInput* AudioNode::input(unsigned i)

Modified: trunk/Source/WebCore/Modules/webaudio/AudioNode.h (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/AudioNode.h	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/AudioNode.h	2020-09-24 19:57:28 UTC (rev 267543)
@@ -199,8 +199,8 @@
 
 protected:
     // Inputs and outputs must be created before the AudioNode is initialized.
-    void addInput(std::unique_ptr<AudioNodeInput>);
-    void addOutput(std::unique_ptr<AudioNodeOutput>);
+    void addInput();
+    void addOutput(unsigned numberOfChannels);
 
     struct DefaultAudioNodeOptions {
         unsigned channelCount;

Modified: trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -67,9 +67,9 @@
 
     // Create the requested number of inputs.
     for (unsigned i = 0; i < numberOfInputs; ++i)
-        addInput(makeUnique<AudioNodeInput>(this));
+        addInput();
 
-    addOutput(makeUnique<AudioNodeOutput>(this, numberOfInputs));
+    addOutput(numberOfInputs);
     
     initialize();
 

Modified: trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -61,11 +61,11 @@
 {
     setNodeType(NodeTypeChannelSplitter);
 
-    addInput(makeUnique<AudioNodeInput>(this));
+    addInput();
 
     // Create a fixed number of outputs (able to handle the maximum number of channels fed to an input).
     for (unsigned i = 0; i < numberOfOutputs; ++i)
-        addOutput(makeUnique<AudioNodeOutput>(this, 1));
+        addOutput(1);
     
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/ConstantSourceNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/ConstantSourceNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/ConstantSourceNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -59,7 +59,7 @@
     , m_sampleAccurateValues(AudioUtilities::renderQuantumSize)
 {
     setNodeType(NodeTypeConstant);
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addOutput(1);
     initialize();
 }
 

Modified: trunk/Source/WebCore/Modules/webaudio/ConvolverNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/ConvolverNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/ConvolverNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -82,8 +82,8 @@
 {
     setNodeType(NodeTypeConvolver);
 
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addInput();
+    addOutput(1);
     
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -71,8 +71,8 @@
 {
     setNodeType(NodeTypeDynamicsCompressor);
 
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, defaultNumberOfOutputChannels));
+    addInput();
+    addOutput(defaultNumberOfOutputChannels);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/GainNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/GainNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/GainNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -62,8 +62,8 @@
 {
     setNodeType(NodeTypeGain);
 
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addInput();
+    addOutput(1);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -72,7 +72,7 @@
     setNodeType(NodeTypeMediaElementAudioSource);
 
     // Default to stereo. This could change depending on what the media element .src is set to.
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addOutput(2);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -83,7 +83,7 @@
     audioSourceProvider->setClient(this);
     
     // Default to stereo. This could change depending on the format of the MediaStream's audio track.
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addOutput(2);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -101,7 +101,7 @@
     setNodeType(NodeTypeOscillator);
     
     // An oscillator is always mono.
-    addOutput(makeUnique<AudioNodeOutput>(this, 1));
+    addOutput(1);
     initialize();
 }
 

Modified: trunk/Source/WebCore/Modules/webaudio/PannerNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/PannerNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/PannerNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -104,8 +104,8 @@
     setConeInnerAngle(options.coneInnerAngle);
     setConeOuterAngle(options.coneOuterAngle);
 
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addInput();
+    addOutput(2);
 
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -69,8 +69,8 @@
 
     setNodeType(NodeTypeJavaScript);
     initializeDefaultNodeOptions(numberOfInputChannels, ChannelCountMode::Explicit, ChannelInterpretation::Speakers);
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, numberOfOutputChannels));
+    addInput();
+    addOutput(numberOfOutputChannels);
 
     initialize();
     suspendIfNeeded();

Modified: trunk/Source/WebCore/Modules/webaudio/StereoPannerNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/StereoPannerNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/StereoPannerNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -62,8 +62,8 @@
 {
     setNodeType(NodeTypeStereo);
     
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addInput();
+    addOutput(2);
     
     initialize();
 }

Modified: trunk/Source/WebCore/Modules/webaudio/WebKitAudioPannerNode.cpp (267542 => 267543)


--- trunk/Source/WebCore/Modules/webaudio/WebKitAudioPannerNode.cpp	2020-09-24 19:08:17 UTC (rev 267542)
+++ trunk/Source/WebCore/Modules/webaudio/WebKitAudioPannerNode.cpp	2020-09-24 19:57:28 UTC (rev 267543)
@@ -59,8 +59,8 @@
     // Load the HRTF database asynchronously so we don't block the _javascript_ thread while creating the HRTF database.
     m_hrtfDatabaseLoader = HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary(context.sampleRate());
 
-    addInput(makeUnique<AudioNodeInput>(this));
-    addOutput(makeUnique<AudioNodeOutput>(this, 2));
+    addInput();
+    addOutput(2);
 
     m_position = FloatPoint3D(0, 0, 0);
     m_orientation = FloatPoint3D(1, 0, 0);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to