Changeset 267604 in webkit
- Timestamp:
- Sep 25, 2020, 4:02:59 PM (6 years ago)
- Location:
- trunk/Source/WebCore
- Files:
-
- 30 edited
-
ChangeLog (modified) (1 diff)
-
Modules/webaudio/AnalyserNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioBasicInspectorNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioBasicInspectorNode.h (modified) (1 diff)
-
Modules/webaudio/AudioBasicProcessorNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioBasicProcessorNode.h (modified) (1 diff)
-
Modules/webaudio/AudioBufferSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioDestinationNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioNode.cpp (modified) (7 diffs)
-
Modules/webaudio/AudioNode.h (modified) (4 diffs)
-
Modules/webaudio/AudioScheduledSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/AudioScheduledSourceNode.h (modified) (1 diff)
-
Modules/webaudio/BiquadFilterNode.cpp (modified) (1 diff)
-
Modules/webaudio/ChannelMergerNode.cpp (modified) (1 diff)
-
Modules/webaudio/ChannelSplitterNode.cpp (modified) (1 diff)
-
Modules/webaudio/ConstantSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/ConvolverNode.cpp (modified) (1 diff)
-
Modules/webaudio/DelayNode.cpp (modified) (1 diff)
-
Modules/webaudio/DynamicsCompressorNode.cpp (modified) (2 diffs)
-
Modules/webaudio/GainNode.cpp (modified) (1 diff)
-
Modules/webaudio/IIRFilterNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaElementAudioSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaStreamAudioDestinationNode.cpp (modified) (1 diff)
-
Modules/webaudio/MediaStreamAudioSourceNode.cpp (modified) (1 diff)
-
Modules/webaudio/OscillatorNode.cpp (modified) (2 diffs)
-
Modules/webaudio/PannerNode.cpp (modified) (2 diffs)
-
Modules/webaudio/ScriptProcessorNode.cpp (modified) (2 diffs)
-
Modules/webaudio/StereoPannerNode.cpp (modified) (1 diff)
-
Modules/webaudio/WaveShaperNode.cpp (modified) (1 diff)
-
Modules/webaudio/WebKitAudioPannerNode.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r267602 r267604 1 2020-09-25 Chris Dumez <cdumez@apple.com> 2 3 Drop AudioNode::setNodeType() 4 https://bugs.webkit.org/show_bug.cgi?id=216988 5 6 Reviewed by Eric Carlson. 7 8 Drop AudioNode::setNodeType() in favor of passing the NodeType to the AudioNode constructor. 9 This makes sure we never forget to set the type. 10 11 * Modules/webaudio/AnalyserNode.cpp: 12 (WebCore::AnalyserNode::AnalyserNode): 13 * Modules/webaudio/AudioBasicInspectorNode.cpp: 14 (WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode): 15 * Modules/webaudio/AudioBasicInspectorNode.h: 16 * Modules/webaudio/AudioBasicProcessorNode.cpp: 17 (WebCore::AudioBasicProcessorNode::AudioBasicProcessorNode): 18 * Modules/webaudio/AudioBasicProcessorNode.h: 19 * Modules/webaudio/AudioBufferSourceNode.cpp: 20 (WebCore::AudioBufferSourceNode::AudioBufferSourceNode): 21 * Modules/webaudio/AudioDestinationNode.cpp: 22 (WebCore::AudioDestinationNode::AudioDestinationNode): 23 * Modules/webaudio/AudioNode.cpp: 24 (WebCore::convertEnumerationToString): 25 (WebCore::AudioNode::AudioNode): 26 (WebCore::AudioNode::printNodeCounts): 27 * Modules/webaudio/AudioNode.h: 28 (WebCore::AudioNode::context): 29 (WebCore::AudioNode::context const): 30 (WebCore::AudioNode::nodeType const): 31 * Modules/webaudio/AudioScheduledSourceNode.cpp: 32 (WebCore::AudioScheduledSourceNode::AudioScheduledSourceNode): 33 * Modules/webaudio/AudioScheduledSourceNode.h: 34 * Modules/webaudio/BiquadFilterNode.cpp: 35 (WebCore::BiquadFilterNode::BiquadFilterNode): 36 * Modules/webaudio/ChannelMergerNode.cpp: 37 (WebCore::ChannelMergerNode::ChannelMergerNode): 38 * Modules/webaudio/ChannelSplitterNode.cpp: 39 (WebCore::ChannelSplitterNode::ChannelSplitterNode): 40 * Modules/webaudio/ConstantSourceNode.cpp: 41 (WebCore::ConstantSourceNode::ConstantSourceNode): 42 * Modules/webaudio/ConvolverNode.cpp: 43 (WebCore::ConvolverNode::ConvolverNode): 44 * Modules/webaudio/DelayNode.cpp: 45 (WebCore::DelayNode::DelayNode): 46 * Modules/webaudio/DynamicsCompressorNode.cpp: 47 (WebCore::DynamicsCompressorNode::DynamicsCompressorNode): 48 * Modules/webaudio/GainNode.cpp: 49 (WebCore::GainNode::GainNode): 50 * Modules/webaudio/IIRFilterNode.cpp: 51 (WebCore::IIRFilterNode::IIRFilterNode): 52 * Modules/webaudio/MediaElementAudioSourceNode.cpp: 53 (WebCore::MediaElementAudioSourceNode::MediaElementAudioSourceNode): 54 * Modules/webaudio/MediaStreamAudioDestinationNode.cpp: 55 (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode): 56 * Modules/webaudio/MediaStreamAudioSourceNode.cpp: 57 (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode): 58 * Modules/webaudio/OscillatorNode.cpp: 59 (WebCore::OscillatorNode::OscillatorNode): 60 * Modules/webaudio/PannerNode.cpp: 61 (WebCore::PannerNodeBase::PannerNodeBase): 62 (WebCore::PannerNode::PannerNode): 63 * Modules/webaudio/ScriptProcessorNode.cpp: 64 (WebCore::ScriptProcessorNode::ScriptProcessorNode): 65 * Modules/webaudio/StereoPannerNode.cpp: 66 (WebCore::StereoPannerNode::StereoPannerNode): 67 * Modules/webaudio/WaveShaperNode.cpp: 68 (WebCore::WaveShaperNode::WaveShaperNode): 69 * Modules/webaudio/WebKitAudioPannerNode.cpp: 70 (WebCore::WebKitAudioPannerNode::WebKitAudioPannerNode): 71 1 72 2020-09-24 Dean Jackson <dino@apple.com> 2 73 -
trunk/Source/WebCore/Modules/webaudio/AnalyserNode.cpp
r267543 r267604 66 66 67 67 AnalyserNode::AnalyserNode(BaseAudioContext& context) 68 : AudioBasicInspectorNode(context) 69 { 70 setNodeType(NodeTypeAnalyser); 68 : AudioBasicInspectorNode(context, NodeTypeAnalyser) 69 { 71 70 addOutput(2); 72 71 -
trunk/Source/WebCore/Modules/webaudio/AudioBasicInspectorNode.cpp
r267543 r267604 37 37 WTF_MAKE_ISO_ALLOCATED_IMPL(AudioBasicInspectorNode); 38 38 39 AudioBasicInspectorNode::AudioBasicInspectorNode(BaseAudioContext& context )40 : AudioNode(context )39 AudioBasicInspectorNode::AudioBasicInspectorNode(BaseAudioContext& context, NodeType type) 40 : AudioNode(context, type) 41 41 { 42 setNodeType(NodeTypeBasicInspector);43 42 addInput(); 44 43 } -
trunk/Source/WebCore/Modules/webaudio/AudioBasicInspectorNode.h
r267252 r267604 35 35 WTF_MAKE_ISO_ALLOCATED(AudioBasicInspectorNode); 36 36 public: 37 explicit AudioBasicInspectorNode(BaseAudioContext&);37 AudioBasicInspectorNode(BaseAudioContext&, NodeType); 38 38 39 39 protected: -
trunk/Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.cpp
r267543 r267604 40 40 WTF_MAKE_ISO_ALLOCATED_IMPL(AudioBasicProcessorNode); 41 41 42 AudioBasicProcessorNode::AudioBasicProcessorNode(BaseAudioContext& context )43 : AudioNode(context )42 AudioBasicProcessorNode::AudioBasicProcessorNode(BaseAudioContext& context, NodeType type) 43 : AudioNode(context, type) 44 44 { 45 45 addInput(); -
trunk/Source/WebCore/Modules/webaudio/AudioBasicProcessorNode.h
r267537 r267604 38 38 WTF_MAKE_ISO_ALLOCATED(AudioBasicProcessorNode); 39 39 public: 40 explicit AudioBasicProcessorNode(BaseAudioContext&);40 AudioBasicProcessorNode(BaseAudioContext&, NodeType); 41 41 42 42 // AudioNode -
trunk/Source/WebCore/Modules/webaudio/AudioBufferSourceNode.cpp
r267591 r267604 90 90 91 91 AudioBufferSourceNode::AudioBufferSourceNode(BaseAudioContext& context) 92 : AudioScheduledSourceNode(context )92 : AudioScheduledSourceNode(context, NodeTypeAudioBufferSource) 93 93 , m_detune(AudioParam::create(context, "detune"_s, 0.0, -FLT_MAX, FLT_MAX, AutomationRate::KRate, AutomationRateMode::Fixed)) 94 94 , m_playbackRate(AudioParam::create(context, "playbackRate"_s, 1.0, -FLT_MAX, FLT_MAX, AutomationRate::KRate, AutomationRateMode::Fixed)) 95 95 , m_grainDuration(DefaultGrainDuration) 96 96 { 97 setNodeType(NodeTypeAudioBufferSource);98 99 97 // Default to mono. A call to setBuffer() will set the number of output channels to that of the buffer. 100 98 addOutput(1); -
trunk/Source/WebCore/Modules/webaudio/AudioDestinationNode.cpp
r267544 r267604 41 41 42 42 AudioDestinationNode::AudioDestinationNode(BaseAudioContext& context) 43 : AudioNode(context )43 : AudioNode(context, NodeTypeDestination) 44 44 { 45 setNodeType(NodeTypeDestination);46 45 addInput(); 47 46 } -
trunk/Source/WebCore/Modules/webaudio/AudioNode.cpp
r267591 r267604 51 51 { 52 52 static const NeverDestroyed<String> values[] = { 53 MAKE_STATIC_STRING_IMPL("NodeTypeUnknown"),54 53 MAKE_STATIC_STRING_IMPL("NodeTypeDestination"), 55 54 MAKE_STATIC_STRING_IMPL("NodeTypeOscillator"), … … 69 68 MAKE_STATIC_STRING_IMPL("NodeTypeDynamicsCompressor"), 70 69 MAKE_STATIC_STRING_IMPL("NodeTypeWaveShaper"), 71 MAKE_STATIC_STRING_IMPL("NodeTypeBasicInspector"),72 70 MAKE_STATIC_STRING_IMPL("NodeTypeConstant"), 73 MAKE_STATIC_STRING_IMPL("NodeTypeStereo "),74 MAKE_STATIC_STRING_IMPL("NodeType End"),71 MAKE_STATIC_STRING_IMPL("NodeTypeStereoPanner"), 72 MAKE_STATIC_STRING_IMPL("NodeTypeIIRFilter"), 75 73 }; 76 static_assert(static_cast<size_t>(AudioNode::NodeTypeUnknown) == 0, "AudioNode::NodeTypeUnknown is not 0 as expected"); 77 static_assert(static_cast<size_t>(AudioNode::NodeTypeDestination) == 1, "AudioNode::NodeTypeDestination is not 1 as expected"); 78 static_assert(static_cast<size_t>(AudioNode::NodeTypeOscillator) == 2, "AudioNode::NodeTypeOscillator is not 2 as expected"); 79 static_assert(static_cast<size_t>(AudioNode::NodeTypeAudioBufferSource) == 3, "AudioNode::NodeTypeAudioBufferSource is not 3 as expected"); 80 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaElementAudioSource) == 4, "AudioNode::NodeTypeMediaElementAudioSource is not 4 as expected"); 81 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaStreamAudioDestination) == 5, "AudioNode::NodeTypeMediaStreamAudioDestination is not 5 as expected"); 82 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaStreamAudioSource) == 6, "AudioNode::NodeTypeMediaStreamAudioSource is not 6 as expected"); 83 static_assert(static_cast<size_t>(AudioNode::NodeTypeJavaScript) == 7, "AudioNode::NodeTypeJavaScript is not 7 as expected"); 84 static_assert(static_cast<size_t>(AudioNode::NodeTypeBiquadFilter) == 8, "AudioNode::NodeTypeBiquadFilter is not 8 as expected"); 85 static_assert(static_cast<size_t>(AudioNode::NodeTypePanner) == 9, "AudioNode::NodeTypePanner is not 9 as expected"); 86 static_assert(static_cast<size_t>(AudioNode::NodeTypeConvolver) == 10, "AudioNode::NodeTypeConvolver is not 10 as expected"); 87 static_assert(static_cast<size_t>(AudioNode::NodeTypeDelay) == 11, "AudioNode::NodeTypeDelay is not 11 as expected"); 88 static_assert(static_cast<size_t>(AudioNode::NodeTypeGain) == 12, "AudioNode::NodeTypeGain is not 12 as expected"); 89 static_assert(static_cast<size_t>(AudioNode::NodeTypeChannelSplitter) == 13, "AudioNode::NodeTypeChannelSplitter is not 13 as expected"); 90 static_assert(static_cast<size_t>(AudioNode::NodeTypeChannelMerger) == 14, "AudioNode::NodeTypeChannelMerger is not 14 as expected"); 91 static_assert(static_cast<size_t>(AudioNode::NodeTypeAnalyser) == 15, "AudioNode::NodeTypeAnalyser is not 15 as expected"); 92 static_assert(static_cast<size_t>(AudioNode::NodeTypeDynamicsCompressor) == 16, "AudioNode::NodeTypeDynamicsCompressor is not 16 as expected"); 93 static_assert(static_cast<size_t>(AudioNode::NodeTypeWaveShaper) == 17, "AudioNode::NodeTypeWaveShaper is not 17 as expected"); 94 static_assert(static_cast<size_t>(AudioNode::NodeTypeBasicInspector) == 18, "AudioNode::NodeTypeBasicInspector is not 18 as expected"); 95 static_assert(static_cast<size_t>(AudioNode::NodeTypeConstant) == 19, "AudioNode::NodeTypeEnd is not 19 as expected"); 96 static_assert(static_cast<size_t>(AudioNode::NodeTypeStereo) == 20, "AudioNode::NodeTypeStereo is not 20 as expected"); 97 static_assert(static_cast<size_t>(AudioNode::NodeTypeIIRFilter) == 21, "AudioNode::NodeTypeIIRFilter is not 21 as expected"); 98 static_assert(static_cast<size_t>(AudioNode::NodeTypeEnd) == 22, "AudioNode::NodeTypeConstant is not 22 as expected"); 74 static_assert(static_cast<size_t>(AudioNode::NodeTypeDestination) == 0, "AudioNode::NodeTypeDestination is not 1 as expected"); 75 static_assert(static_cast<size_t>(AudioNode::NodeTypeOscillator) == 1, "AudioNode::NodeTypeOscillator is not 2 as expected"); 76 static_assert(static_cast<size_t>(AudioNode::NodeTypeAudioBufferSource) == 2, "AudioNode::NodeTypeAudioBufferSource is not 3 as expected"); 77 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaElementAudioSource) == 3, "AudioNode::NodeTypeMediaElementAudioSource is not 4 as expected"); 78 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaStreamAudioDestination) == 4, "AudioNode::NodeTypeMediaStreamAudioDestination is not 5 as expected"); 79 static_assert(static_cast<size_t>(AudioNode::NodeTypeMediaStreamAudioSource) == 5, "AudioNode::NodeTypeMediaStreamAudioSource is not 6 as expected"); 80 static_assert(static_cast<size_t>(AudioNode::NodeTypeJavaScript) == 6, "AudioNode::NodeTypeJavaScript is not 7 as expected"); 81 static_assert(static_cast<size_t>(AudioNode::NodeTypeBiquadFilter) == 7, "AudioNode::NodeTypeBiquadFilter is not 8 as expected"); 82 static_assert(static_cast<size_t>(AudioNode::NodeTypePanner) == 8, "AudioNode::NodeTypePanner is not 9 as expected"); 83 static_assert(static_cast<size_t>(AudioNode::NodeTypeConvolver) == 9, "AudioNode::NodeTypeConvolver is not 10 as expected"); 84 static_assert(static_cast<size_t>(AudioNode::NodeTypeDelay) == 10, "AudioNode::NodeTypeDelay is not 11 as expected"); 85 static_assert(static_cast<size_t>(AudioNode::NodeTypeGain) == 11, "AudioNode::NodeTypeGain is not 12 as expected"); 86 static_assert(static_cast<size_t>(AudioNode::NodeTypeChannelSplitter) == 12, "AudioNode::NodeTypeChannelSplitter is not 13 as expected"); 87 static_assert(static_cast<size_t>(AudioNode::NodeTypeChannelMerger) == 13, "AudioNode::NodeTypeChannelMerger is not 14 as expected"); 88 static_assert(static_cast<size_t>(AudioNode::NodeTypeAnalyser) == 14, "AudioNode::NodeTypeAnalyser is not 15 as expected"); 89 static_assert(static_cast<size_t>(AudioNode::NodeTypeDynamicsCompressor) == 15, "AudioNode::NodeTypeDynamicsCompressor is not 16 as expected"); 90 static_assert(static_cast<size_t>(AudioNode::NodeTypeWaveShaper) == 16, "AudioNode::NodeTypeWaveShaper is not 17 as expected"); 91 static_assert(static_cast<size_t>(AudioNode::NodeTypeConstant) == 17, "AudioNode::NodeTypeConstant is not 19 as expected"); 92 static_assert(static_cast<size_t>(AudioNode::NodeTypeStereoPanner) == 18, "AudioNode::NodeTypeStereoPanner is not 20 as expected"); 93 static_assert(static_cast<size_t>(AudioNode::NodeTypeIIRFilter) == 19, "AudioNode::NodeTypeIIRFilter is not 21 as expected"); 99 94 100 95 ASSERT(static_cast<size_t>(enumerationValue) < WTF_ARRAY_LENGTH(values)); … … 103 98 } 104 99 105 AudioNode::AudioNode(BaseAudioContext& context) 106 : m_context(context) 100 AudioNode::AudioNode(BaseAudioContext& context, NodeType type) 101 : m_nodeType(type) 102 , m_context(context) 107 103 #if !RELEASE_LOG_DISABLED 108 104 , m_logger(context.logger()) … … 113 109 114 110 #if DEBUG_AUDIONODE_REFERENCES 111 ++s_nodeCount[type]; 115 112 if (!s_isNodeCountInitialized) { 116 113 s_isNodeCountInitialized = true; … … 139 136 { 140 137 m_isInitialized = false; 141 }142 143 void AudioNode::setNodeType(NodeType type)144 {145 ASSERT(isMainThread());146 ALWAYS_LOG(LOGIDENTIFIER, type);147 148 m_nodeType = type;149 150 #if DEBUG_AUDIONODE_REFERENCES151 ++s_nodeCount[type];152 #endif153 138 } 154 139 … … 724 709 725 710 bool AudioNode::s_isNodeCountInitialized = false; 726 int AudioNode::s_nodeCount[NodeType End];711 int AudioNode::s_nodeCount[NodeTypeLast + 1]; 727 712 728 713 void AudioNode::printNodeCounts() … … 733 718 fprintf(stderr, "===========================\n"); 734 719 735 for (unsigned i = 0; i < NodeTypeEnd; ++i)720 for (unsigned i = 0; i <= NodeTypeLast; ++i) 736 721 fprintf(stderr, "%d: %d\n", i, s_nodeCount[i]); 737 722 -
trunk/Source/WebCore/Modules/webaudio/AudioNode.h
r267591 r267604 60 60 WTF_MAKE_ISO_ALLOCATED(AudioNode); 61 61 public: 62 explicit AudioNode(BaseAudioContext&);63 virtual ~AudioNode();64 65 BaseAudioContext& context() { return m_context.get(); }66 const BaseAudioContext& context() const { return m_context.get(); }67 68 Variant<RefPtr<BaseAudioContext>, RefPtr<WebKitAudioContext>> contextForBindings() const;69 70 62 enum NodeType { 71 NodeTypeUnknown,72 63 NodeTypeDestination, 73 64 NodeTypeOscillator, … … 87 78 NodeTypeDynamicsCompressor, 88 79 NodeTypeWaveShaper, 89 NodeTypeBasicInspector,90 80 NodeTypeConstant, 91 NodeTypeStereo ,81 NodeTypeStereoPanner, 92 82 NodeTypeIIRFilter, 93 NodeType End83 NodeTypeLast = NodeTypeIIRFilter 94 84 }; 95 85 86 AudioNode(BaseAudioContext&, NodeType); 87 virtual ~AudioNode(); 88 89 BaseAudioContext& context() { return m_context.get(); } 90 const BaseAudioContext& context() const { return m_context.get(); } 91 92 Variant<RefPtr<BaseAudioContext>, RefPtr<WebKitAudioContext>> contextForBindings() const; 93 96 94 NodeType nodeType() const { return m_nodeType; } 97 void setNodeType(NodeType);98 95 99 96 // Can be called from main thread or context's audio thread. … … 236 233 237 234 volatile bool m_isInitialized { false }; 238 NodeType m_nodeType { NodeTypeUnknown };235 NodeType m_nodeType; 239 236 Ref<BaseAudioContext> m_context; 240 237 … … 255 252 #if DEBUG_AUDIONODE_REFERENCES 256 253 static bool s_isNodeCountInitialized; 257 static int s_nodeCount[NodeType End];254 static int s_nodeCount[NodeTypeLast + 1]; 258 255 #endif 259 256 -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.cpp
r267544 r267604 48 48 WTF_MAKE_ISO_ALLOCATED_IMPL(AudioScheduledSourceNode); 49 49 50 AudioScheduledSourceNode::AudioScheduledSourceNode(BaseAudioContext& context )51 : AudioNode(context )50 AudioScheduledSourceNode::AudioScheduledSourceNode(BaseAudioContext& context, NodeType type) 51 : AudioNode(context, type) 52 52 , ActiveDOMObject(context.scriptExecutionContext()) 53 53 { -
trunk/Source/WebCore/Modules/webaudio/AudioScheduledSourceNode.h
r267544 r267604 54 54 }; 55 55 56 explicit AudioScheduledSourceNode(BaseAudioContext&);56 AudioScheduledSourceNode(BaseAudioContext&, NodeType); 57 57 58 58 ExceptionOr<void> startLater(double when); -
trunk/Source/WebCore/Modules/webaudio/BiquadFilterNode.cpp
r267432 r267604 57 57 58 58 BiquadFilterNode::BiquadFilterNode(BaseAudioContext& context) 59 : AudioBasicProcessorNode(context )59 : AudioBasicProcessorNode(context, NodeTypeBiquadFilter) 60 60 { 61 setNodeType(NodeTypeBiquadFilter);62 63 61 // Initially setup as lowpass filter. 64 62 m_processor = makeUnique<BiquadProcessor>(context, context.sampleRate(), 1, false); -
trunk/Source/WebCore/Modules/webaudio/ChannelMergerNode.cpp
r267543 r267604 62 62 63 63 ChannelMergerNode::ChannelMergerNode(BaseAudioContext& context, unsigned numberOfInputs) 64 : AudioNode(context )64 : AudioNode(context, NodeTypeChannelMerger) 65 65 { 66 setNodeType(NodeTypeChannelMerger);67 68 66 // Create the requested number of inputs. 69 67 for (unsigned i = 0; i < numberOfInputs; ++i) -
trunk/Source/WebCore/Modules/webaudio/ChannelSplitterNode.cpp
r267543 r267604 58 58 59 59 ChannelSplitterNode::ChannelSplitterNode(BaseAudioContext& context, unsigned numberOfOutputs) 60 : AudioNode(context )60 : AudioNode(context, NodeTypeChannelSplitter) 61 61 { 62 setNodeType(NodeTypeChannelSplitter);63 64 62 addInput(); 65 63 -
trunk/Source/WebCore/Modules/webaudio/ConstantSourceNode.cpp
r267543 r267604 55 55 56 56 ConstantSourceNode::ConstantSourceNode(BaseAudioContext& context, float offset) 57 : AudioScheduledSourceNode(context )57 : AudioScheduledSourceNode(context, NodeTypeConstant) 58 58 , m_offset(AudioParam::create(context, "offset"_s, offset, -FLT_MAX, FLT_MAX, AutomationRate::ARate)) 59 59 , m_sampleAccurateValues(AudioUtilities::renderQuantumSize) 60 60 { 61 setNodeType(NodeTypeConstant);62 61 addOutput(1); 63 62 initialize(); -
trunk/Source/WebCore/Modules/webaudio/ConvolverNode.cpp
r267544 r267604 79 79 80 80 ConvolverNode::ConvolverNode(BaseAudioContext& context) 81 : AudioNode(context) 82 { 83 setNodeType(NodeTypeConvolver); 84 81 : AudioNode(context, NodeTypeConvolver) 82 { 85 83 addInput(); 86 84 addOutput(1); -
trunk/Source/WebCore/Modules/webaudio/DelayNode.cpp
r267544 r267604 40 40 41 41 inline DelayNode::DelayNode(BaseAudioContext& context, double maxDelayTime) 42 : AudioBasicProcessorNode(context )42 : AudioBasicProcessorNode(context, NodeTypeDelay) 43 43 { 44 setNodeType(NodeTypeDelay);45 44 m_processor = makeUnique<DelayProcessor>(context, context.sampleRate(), 1, maxDelayTime); 46 45 -
trunk/Source/WebCore/Modules/webaudio/DynamicsCompressorNode.cpp
r267544 r267604 63 63 64 64 DynamicsCompressorNode::DynamicsCompressorNode(BaseAudioContext& context, const DynamicsCompressorOptions& options) 65 : AudioNode(context )65 : AudioNode(context, NodeTypeDynamicsCompressor) 66 66 , m_threshold(AudioParam::create(context, "threshold"_s, options.threshold, -100, 0, AutomationRate::KRate, AutomationRateMode::Fixed)) 67 67 , m_knee(AudioParam::create(context, "knee"_s, options.knee, 0, 40, AutomationRate::KRate, AutomationRateMode::Fixed)) … … 70 70 , m_release(AudioParam::create(context, "release"_s, options.release, 0, 1, AutomationRate::KRate, AutomationRateMode::Fixed)) 71 71 { 72 setNodeType(NodeTypeDynamicsCompressor);73 74 72 addInput(); 75 73 addOutput(defaultNumberOfOutputChannels); -
trunk/Source/WebCore/Modules/webaudio/GainNode.cpp
r267560 r267604 58 58 59 59 GainNode::GainNode(BaseAudioContext& context) 60 : AudioNode(context )60 : AudioNode(context, NodeTypeGain) 61 61 , m_sampleAccurateGainValues(AudioUtilities::renderQuantumSize) // FIXME: can probably share temp buffer in context 62 62 , m_gain(AudioParam::create(context, "gain"_s, 1.0, -FLT_MAX, FLT_MAX, AutomationRate::ARate)) 63 63 { 64 setNodeType(NodeTypeGain);65 66 64 addInput(); 67 65 addOutput(1); -
trunk/Source/WebCore/Modules/webaudio/IIRFilterNode.cpp
r266186 r267604 117 117 118 118 IIRFilterNode::IIRFilterNode(BaseAudioContext& context, const Vector<double>& feedforward, const Vector<double>& feedback, bool isFilterStable) 119 : AudioBasicProcessorNode(context )119 : AudioBasicProcessorNode(context, NodeTypeIIRFilter) 120 120 { 121 setNodeType(NodeTypeIIRFilter);122 121 m_processor = makeUnique<IIRProcessor>(context.sampleRate(), 1, feedforward, feedback, isFilterStable); 123 122 -
trunk/Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.cpp
r267544 r267604 67 67 68 68 MediaElementAudioSourceNode::MediaElementAudioSourceNode(BaseAudioContext& context, Ref<HTMLMediaElement>&& mediaElement) 69 : AudioNode(context )69 : AudioNode(context, NodeTypeMediaElementAudioSource) 70 70 , m_mediaElement(WTFMove(mediaElement)) 71 71 { 72 setNodeType(NodeTypeMediaElementAudioSource);73 74 72 // Default to stereo. This could change depending on what the media element .src is set to. 75 73 addOutput(2); -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioDestinationNode.cpp
r267537 r267604 57 57 58 58 MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode(BaseAudioContext& context) 59 : AudioBasicInspectorNode(context )59 : AudioBasicInspectorNode(context, NodeTypeMediaStreamAudioDestination) 60 60 , m_source(MediaStreamAudioSource::create(context.sampleRate())) 61 61 , m_stream(MediaStream::create(*context.document(), MediaStreamPrivate::create(context.document()->logger(), m_source.copyRef()))) 62 62 { 63 setNodeType(NodeTypeMediaStreamAudioDestination);64 63 initialize(); 65 64 } -
trunk/Source/WebCore/Modules/webaudio/MediaStreamAudioSourceNode.cpp
r267543 r267604 72 72 73 73 MediaStreamAudioSourceNode::MediaStreamAudioSourceNode(BaseAudioContext& context, MediaStream& mediaStream, MediaStreamTrack& audioTrack) 74 : AudioNode(context )74 : AudioNode(context, NodeTypeMediaStreamAudioSource) 75 75 , m_mediaStream(mediaStream) 76 76 , m_audioTrack(audioTrack) 77 77 { 78 setNodeType(NodeTypeMediaStreamAudioSource);79 80 78 AudioSourceProvider* audioSourceProvider = m_audioTrack->audioSourceProvider(); 81 79 ASSERT(audioSourceProvider); -
trunk/Source/WebCore/Modules/webaudio/OscillatorNode.cpp
r267543 r267604 93 93 94 94 OscillatorNode::OscillatorNode(BaseAudioContext& context, const OscillatorOptions& options) 95 : AudioScheduledSourceNode(context )95 : AudioScheduledSourceNode(context, NodeTypeOscillator) 96 96 , m_frequency(AudioParam::create(context, "frequency"_s, options.frequency, -context.sampleRate() / 2, context.sampleRate() / 2, AutomationRate::ARate)) 97 97 , m_detune(AudioParam::create(context, "detune"_s, options.detune, -1200 * log2f(std::numeric_limits<float>::max()), 1200 * log2f(std::numeric_limits<float>::max()), AutomationRate::ARate)) … … 99 99 , m_detuneValues(AudioUtilities::renderQuantumSize) 100 100 { 101 setNodeType(NodeTypeOscillator);102 103 101 // An oscillator is always mono. 104 102 addOutput(1); -
trunk/Source/WebCore/Modules/webaudio/PannerNode.cpp
r267560 r267604 52 52 53 53 PannerNodeBase::PannerNodeBase(BaseAudioContext& context) 54 : AudioNode(context )54 : AudioNode(context, NodeTypePanner) 55 55 { 56 56 } … … 100 100 , m_hrtfDatabaseLoader(HRTFDatabaseLoader::createAndLoadAsynchronouslyIfNecessary(context.sampleRate())) 101 101 { 102 setNodeType(NodeTypePanner);103 104 102 setDistanceModel(options.distanceModel); 105 103 setConeInnerAngle(options.coneInnerAngle); -
trunk/Source/WebCore/Modules/webaudio/ScriptProcessorNode.cpp
r267591 r267604 53 53 54 54 ScriptProcessorNode::ScriptProcessorNode(BaseAudioContext& context, size_t bufferSize, unsigned numberOfInputChannels, unsigned numberOfOutputChannels) 55 : AudioNode(context )55 : AudioNode(context, NodeTypeJavaScript) 56 56 , ActiveDOMObject(context.scriptExecutionContext()) 57 57 , m_bufferSize(bufferSize) … … 66 66 ASSERT(numberOfInputChannels <= AudioContext::maxNumberOfChannels()); 67 67 68 setNodeType(NodeTypeJavaScript);69 68 initializeDefaultNodeOptions(numberOfInputChannels, ChannelCountMode::Explicit, ChannelInterpretation::Speakers); 70 69 addInput(); -
trunk/Source/WebCore/Modules/webaudio/StereoPannerNode.cpp
r267543 r267604 57 57 58 58 StereoPannerNode::StereoPannerNode(BaseAudioContext& context, float pan) 59 : AudioNode(context )59 : AudioNode(context, NodeTypeStereoPanner) 60 60 , m_pan(AudioParam::create(context, "pan"_s, pan, -1, 1, AutomationRate::ARate)) 61 61 , m_sampleAccurateValues(AudioUtilities::renderQuantumSize) 62 62 { 63 setNodeType(NodeTypeStereo);64 65 63 addInput(); 66 64 addOutput(2); -
trunk/Source/WebCore/Modules/webaudio/WaveShaperNode.cpp
r265832 r267604 71 71 72 72 WaveShaperNode::WaveShaperNode(BaseAudioContext& context) 73 : AudioBasicProcessorNode(context )73 : AudioBasicProcessorNode(context, NodeTypeWaveShaper) 74 74 { 75 setNodeType(NodeTypeWaveShaper);76 75 m_processor = makeUnique<WaveShaperProcessor>(context.sampleRate(), 1); 77 76 -
trunk/Source/WebCore/Modules/webaudio/WebKitAudioPannerNode.cpp
r267544 r267604 52 52 : PannerNodeBase(context) 53 53 { 54 setNodeType(NodeTypePanner);55 54 initializeDefaultNodeOptions(2, ChannelCountMode::ClampedMax, ChannelInterpretation::Speakers); 56 55
Note:
See TracChangeset
for help on using the changeset viewer.