| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010, Google Inc. All rights reserved. | 2 * Copyright (C) 2010, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 61 class ExceptionState; | 61 class ExceptionState; |
| 62 class GainNode; | 62 class GainNode; |
| 63 class HTMLMediaElement; | 63 class HTMLMediaElement; |
| 64 class MediaElementAudioSourceNode; | 64 class MediaElementAudioSourceNode; |
| 65 class MediaStreamAudioDestinationNode; | 65 class MediaStreamAudioDestinationNode; |
| 66 class MediaStreamAudioSourceNode; | 66 class MediaStreamAudioSourceNode; |
| 67 class OscillatorNode; | 67 class OscillatorNode; |
| 68 class PannerNode; | 68 class PannerNode; |
| 69 class PeriodicWave; | 69 class PeriodicWave; |
| 70 class ScriptProcessorNode; | 70 class ScriptProcessorNode; |
| 71 class StereoPannerNode; |
| 71 class WaveShaperNode; | 72 class WaveShaperNode; |
| 72 | 73 |
| 73 // AudioContext is the cornerstone of the web audio API and all AudioNodes are c
reated from it. | 74 // AudioContext is the cornerstone of the web audio API and all AudioNodes are c
reated from it. |
| 74 // For thread safety between the audio thread and the main thread, it has a rend
ering graph locking mechanism. | 75 // For thread safety between the audio thread and the main thread, it has a rend
ering graph locking mechanism. |
| 75 | 76 |
| 76 class AudioContext : public RefCountedGarbageCollectedWillBeGarbageCollectedFina
lized<AudioContext>, public ActiveDOMObject, public EventTargetWithInlineData { | 77 class AudioContext : public RefCountedGarbageCollectedWillBeGarbageCollectedFina
lized<AudioContext>, public ActiveDOMObject, public EventTargetWithInlineData { |
| 77 DEFINE_EVENT_TARGET_REFCOUNTING_WILL_BE_REMOVED(RefCountedGarbageCollected<A
udioContext>); | 78 DEFINE_EVENT_TARGET_REFCOUNTING_WILL_BE_REMOVED(RefCountedGarbageCollected<A
udioContext>); |
| 78 DEFINE_WRAPPERTYPEINFO(); | 79 DEFINE_WRAPPERTYPEINFO(); |
| 79 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(AudioContext); | 80 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(AudioContext); |
| 80 public: | 81 public: |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 115 DelayNode* createDelay(ExceptionState&); | 116 DelayNode* createDelay(ExceptionState&); |
| 116 DelayNode* createDelay(double maxDelayTime, ExceptionState&); | 117 DelayNode* createDelay(double maxDelayTime, ExceptionState&); |
| 117 PannerNode* createPanner(); | 118 PannerNode* createPanner(); |
| 118 ConvolverNode* createConvolver(); | 119 ConvolverNode* createConvolver(); |
| 119 DynamicsCompressorNode* createDynamicsCompressor(); | 120 DynamicsCompressorNode* createDynamicsCompressor(); |
| 120 AnalyserNode* createAnalyser(); | 121 AnalyserNode* createAnalyser(); |
| 121 ScriptProcessorNode* createScriptProcessor(ExceptionState&); | 122 ScriptProcessorNode* createScriptProcessor(ExceptionState&); |
| 122 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, ExceptionState
&); | 123 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, ExceptionState
&); |
| 123 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, size_t numberO
fInputChannels, ExceptionState&); | 124 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, size_t numberO
fInputChannels, ExceptionState&); |
| 124 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, size_t numberO
fInputChannels, size_t numberOfOutputChannels, ExceptionState&); | 125 ScriptProcessorNode* createScriptProcessor(size_t bufferSize, size_t numberO
fInputChannels, size_t numberOfOutputChannels, ExceptionState&); |
| 126 StereoPannerNode* createStereoPanner(); |
| 125 ChannelSplitterNode* createChannelSplitter(ExceptionState&); | 127 ChannelSplitterNode* createChannelSplitter(ExceptionState&); |
| 126 ChannelSplitterNode* createChannelSplitter(size_t numberOfOutputs, Exception
State&); | 128 ChannelSplitterNode* createChannelSplitter(size_t numberOfOutputs, Exception
State&); |
| 127 ChannelMergerNode* createChannelMerger(ExceptionState&); | 129 ChannelMergerNode* createChannelMerger(ExceptionState&); |
| 128 ChannelMergerNode* createChannelMerger(size_t numberOfInputs, ExceptionState
&); | 130 ChannelMergerNode* createChannelMerger(size_t numberOfInputs, ExceptionState
&); |
| 129 OscillatorNode* createOscillator(); | 131 OscillatorNode* createOscillator(); |
| 130 PeriodicWave* createPeriodicWave(DOMFloat32Array* real, DOMFloat32Array* ima
g, ExceptionState&); | 132 PeriodicWave* createPeriodicWave(DOMFloat32Array* real, DOMFloat32Array* ima
g, ExceptionState&); |
| 131 | 133 |
| 132 // When a source node has no more processing to do (has finished playing), t
hen it tells the context to dereference it. | 134 // When a source node has no more processing to do (has finished playing), t
hen it tells the context to dereference it. |
| 133 void notifyNodeFinishedProcessing(AudioNode*); | 135 void notifyNodeFinishedProcessing(AudioNode*); |
| 134 | 136 |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 347 HashSet<AudioNode*> m_deferredCountModeChange; | 349 HashSet<AudioNode*> m_deferredCountModeChange; |
| 348 | 350 |
| 349 // This is considering 32 is large enough for multiple channels audio. | 351 // This is considering 32 is large enough for multiple channels audio. |
| 350 // It is somewhat arbitrary and could be increased if necessary. | 352 // It is somewhat arbitrary and could be increased if necessary. |
| 351 enum { MaxNumberOfChannels = 32 }; | 353 enum { MaxNumberOfChannels = 32 }; |
| 352 }; | 354 }; |
| 353 | 355 |
| 354 } // namespace blink | 356 } // namespace blink |
| 355 | 357 |
| 356 #endif // AudioContext_h | 358 #endif // AudioContext_h |
| OLD | NEW |