OscillatorNode.webidl (1321B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 4 * You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * The origin of this IDL file is 7 * https://webaudio.github.io/web-audio-api/ 8 * 9 * Copyright © 2012 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C 10 * liability, trademark and document use rules apply. 11 */ 12 13 enum OscillatorType { 14 "sine", 15 "square", 16 "sawtooth", 17 "triangle", 18 "custom" 19 }; 20 21 dictionary OscillatorOptions : AudioNodeOptions { 22 OscillatorType type = "sine"; 23 float frequency = 440; 24 float detune = 0; 25 PeriodicWave periodicWave; 26 }; 27 28 [Pref="dom.webaudio.enabled", 29 Exposed=Window] 30 interface OscillatorNode : AudioScheduledSourceNode { 31 [Throws] 32 constructor(BaseAudioContext context, 33 optional OscillatorOptions options = {}); 34 35 [SetterThrows] 36 attribute OscillatorType type; 37 38 readonly attribute AudioParam frequency; // in Hertz 39 readonly attribute AudioParam detune; // in Cents 40 41 undefined setPeriodicWave(PeriodicWave periodicWave); 42 }; 43 44 // Mozilla extensions 45 OscillatorNode includes AudioNodePassThrough;