WebCore/ChangeLog

 12010-11-29 Chris Rogers <crogers@google.com>
 2
 3 Reviewed by NOBODY (OOPS!).
 4
 5 Add remaining custom JSC web audio bindings
 6 https://bugs.webkit.org/show_bug.cgi?id=50172
 7
 8 No new tests since audio API is not yet implemented.
 9
 10 * bindings/js/JSAudioBufferSourceNodeCustom.cpp: Added.
 11 (WebCore::JSAudioBufferSourceNode::setBuffer):
 12 * bindings/js/JSConvolverNodeCustom.cpp: Added.
 13 (WebCore::JSConvolverNode::setBuffer):
 14 * bindings/js/JSJavaScriptAudioNodeCustom.cpp: Added.
 15 (WebCore::JSJavaScriptAudioNode::markChildren):
 16 * webaudio/AudioBufferSourceNode.idl:
 17 * webaudio/ConvolverNode.idl:
 18
1192010-11-29 Gavin Peters <gavinp@chromium.org>
220
321 Reviewed by Adam Barth.
72818

WebCore/bindings/js/JSAudioBufferSourceNodeCustom.cpp

 1/*
 2 * Copyright (C) 2010, Google Inc. All rights reserved.
 3 *
 4 * Redistribution and use in source and binary forms, with or without
 5 * modification, are permitted provided that the following conditions
 6 * are met:
 7 * 1. Redistributions of source code must retain the above copyright
 8 * notice, this list of conditions and the following disclaimer.
 9 * 2. Redistributions in binary form must reproduce the above copyright
 10 * notice, this list of conditions and the following disclaimer in the
 11 * documentation and/or other materials provided with the distribution.
 12 *
 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 16 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
 17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 18 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 19 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 22 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 23 */
 24
 25#include "config.h"
 26
 27#if ENABLE(WEB_AUDIO)
 28
 29#include "AudioBufferSourceNode.h"
 30
 31#include "AudioBuffer.h"
 32#include "JSAudioBuffer.h"
 33#include "JSAudioBufferSourceNode.h"
 34
 35using namespace JSC;
 36
 37namespace WebCore {
 38
 39void JSAudioBufferSourceNode::setBuffer(ExecState*, JSValue value)
 40{
 41 AudioBufferSourceNode* imp = static_cast<AudioBufferSourceNode*>(impl());
 42 imp->setBuffer(toAudioBuffer(value));
 43}
 44
 45} // namespace WebCore
 46
 47#endif // ENABLE(WEB_AUDIO)
0

WebCore/bindings/js/JSConvolverNodeCustom.cpp

 1/*
 2 * Copyright (C) 2010, Google Inc. All rights reserved.
 3 *
 4 * Redistribution and use in source and binary forms, with or without
 5 * modification, are permitted provided that the following conditions
 6 * are met:
 7 * 1. Redistributions of source code must retain the above copyright
 8 * notice, this list of conditions and the following disclaimer.
 9 * 2. Redistributions in binary form must reproduce the above copyright
 10 * notice, this list of conditions and the following disclaimer in the
 11 * documentation and/or other materials provided with the distribution.
 12 *
 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 16 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
 17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 18 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 19 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 22 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 23 */
 24
 25#include "config.h"
 26
 27#if ENABLE(WEB_AUDIO)
 28
 29#include "ConvolverNode.h"
 30
 31#include "AudioBuffer.h"
 32#include "JSAudioBuffer.h"
 33#include "JSConvolverNode.h"
 34
 35using namespace JSC;
 36
 37namespace WebCore {
 38
 39void JSConvolverNode::setBuffer(ExecState*, JSValue value)
 40{
 41 ConvolverNode* imp = static_cast<ConvolverNode*>(impl());
 42 imp->setBuffer(toAudioBuffer(value));
 43}
 44
 45} // namespace WebCore
 46
 47#endif // ENABLE(WEB_AUDIO)
0

WebCore/bindings/js/JSJavaScriptAudioNodeCustom.cpp

 1/*
 2 * Copyright (C) 2010, Google Inc. All rights reserved.
 3 *
 4 * Redistribution and use in source and binary forms, with or without
 5 * modification, are permitted provided that the following conditions
 6 * are met:
 7 * 1. Redistributions of source code must retain the above copyright
 8 * notice, this list of conditions and the following disclaimer.
 9 * 2. Redistributions in binary form must reproduce the above copyright
 10 * notice, this list of conditions and the following disclaimer in the
 11 * documentation and/or other materials provided with the distribution.
 12 *
 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' AND ANY
 14 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
 15 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 16 * DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY
 17 * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 18 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 19 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
 20 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 21 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
 22 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 23 */
 24
 25#include "config.h"
 26
 27#if ENABLE(WEB_AUDIO)
 28
 29#include "JavaScriptAudioNode.h"
 30
 31#include "JSJavaScriptAudioNode.h"
 32
 33using namespace JSC;
 34
 35namespace WebCore {
 36
 37void JSJavaScriptAudioNode::markChildren(MarkStack& markStack)
 38{
 39 Base::markChildren(markStack);
 40 static_cast<JavaScriptAudioNode*>(impl())->markJSEventListeners(markStack);
 41}
 42
 43} // namespace WebCore
 44
 45#endif // ENABLE(WEB_AUDIO)
0

WebCore/webaudio/AudioBufferSourceNode.idl

@@module audio {
2828 Conditional=WEB_AUDIO,
2929 GenerateToJS
3030 ] AudioBufferSourceNode : AudioSourceNode {
31  attribute [Custom] AudioBuffer buffer;
 31 attribute [JSCCustomSetter] AudioBuffer buffer;
3232
3333 readonly attribute AudioGain gain;
3434 readonly attribute AudioParam playbackRate;
72696

WebCore/webaudio/ConvolverNode.idl

@@module audio {
2828 Conditional=WEB_AUDIO,
2929 GenerateToJS
3030 ] ConvolverNode : AudioNode {
31  attribute [Custom] AudioBuffer buffer;
 31 attribute [JSCCustomSetter] AudioBuffer buffer;
3232 };
3333}
72696