mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2024-11-22 07:30:19 +00:00
LibWeb: Implement AudioNode.numberOfInputs and .numberOfOutputs
This commit is contained in:
parent
d7a3bad2b4
commit
7b4f0d13ee
Notes:
github-actions[bot]
2024-10-08 14:35:15 +00:00
Author: https://github.com/gmta Commit: https://github.com/LadybirdBrowser/ladybird/commit/7b4f0d13eed Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/1679
8 changed files with 20 additions and 16 deletions
|
@ -41,6 +41,8 @@ public:
|
|||
double loop_start() const;
|
||||
WebIDL::ExceptionOr<void> set_loop_end(double);
|
||||
double loop_end() const;
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 0; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 2; }
|
||||
|
||||
WebIDL::ExceptionOr<void> start(Optional<double>, Optional<double>, Optional<double>);
|
||||
|
||||
|
|
|
@ -23,6 +23,8 @@ public:
|
|||
virtual ~AudioDestinationNode() override;
|
||||
|
||||
WebIDL::UnsignedLong max_channel_count();
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 1; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 1; }
|
||||
|
||||
static JS::NonnullGCPtr<AudioDestinationNode> construct_impl(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>);
|
||||
|
||||
|
|
|
@ -98,20 +98,6 @@ void AudioNode::disconnect(JS::NonnullGCPtr<AudioParam> destination_param, WebID
|
|||
dbgln("FIXME: Implement AudioNode::disconnect(destination_param, output)");
|
||||
}
|
||||
|
||||
// https://webaudio.github.io/web-audio-api/#dom-audionode-numberofinputs
|
||||
WebIDL::UnsignedLong AudioNode::number_of_inputs()
|
||||
{
|
||||
dbgln("FIXME: Implement AudioNode::number_of_inputs()");
|
||||
return 0;
|
||||
}
|
||||
|
||||
// https://webaudio.github.io/web-audio-api/#dom-audionode-numberofoutputs
|
||||
WebIDL::UnsignedLong AudioNode::number_of_outputs()
|
||||
{
|
||||
dbgln("FIXME: Implement AudioNode::number_of_outputs()");
|
||||
return 0;
|
||||
}
|
||||
|
||||
// https://webaudio.github.io/web-audio-api/#dom-audionode-channelcount
|
||||
WebIDL::ExceptionOr<void> AudioNode::set_channel_count(WebIDL::UnsignedLong channel_count)
|
||||
{
|
||||
|
|
|
@ -48,8 +48,11 @@ public:
|
|||
return m_context;
|
||||
}
|
||||
|
||||
WebIDL::UnsignedLong number_of_inputs();
|
||||
WebIDL::UnsignedLong number_of_outputs();
|
||||
// https://webaudio.github.io/web-audio-api/#dom-audionode-numberofinputs
|
||||
virtual WebIDL::UnsignedLong number_of_inputs() = 0;
|
||||
// https://webaudio.github.io/web-audio-api/#dom-audionode-numberofoutputs
|
||||
virtual WebIDL::UnsignedLong number_of_outputs() = 0;
|
||||
|
||||
WebIDL::ExceptionOr<void> set_channel_count(WebIDL::UnsignedLong);
|
||||
WebIDL::UnsignedLong channel_count();
|
||||
WebIDL::ExceptionOr<void> set_channel_count_mode(Bindings::ChannelCountMode);
|
||||
|
|
|
@ -29,6 +29,9 @@ class BiquadFilterNode : public AudioNode {
|
|||
public:
|
||||
virtual ~BiquadFilterNode() override;
|
||||
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 1; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 1; }
|
||||
|
||||
WebIDL::ExceptionOr<void> set_type(Bindings::BiquadFilterType);
|
||||
Bindings::BiquadFilterType type() const;
|
||||
JS::NonnullGCPtr<AudioParam> frequency() const;
|
||||
|
|
|
@ -30,6 +30,9 @@ public:
|
|||
static WebIDL::ExceptionOr<JS::NonnullGCPtr<DynamicsCompressorNode>> create(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>, DynamicsCompressorOptions const& = {});
|
||||
static WebIDL::ExceptionOr<JS::NonnullGCPtr<DynamicsCompressorNode>> construct_impl(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>, DynamicsCompressorOptions const& = {});
|
||||
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 1; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 1; }
|
||||
|
||||
JS::NonnullGCPtr<AudioParam const> threshold() const { return m_threshold; }
|
||||
JS::NonnullGCPtr<AudioParam const> knee() const { return m_knee; }
|
||||
JS::NonnullGCPtr<AudioParam const> ratio() const { return m_ratio; }
|
||||
|
|
|
@ -27,6 +27,9 @@ public:
|
|||
static JS::NonnullGCPtr<GainNode> create(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>, GainOptions const& = {});
|
||||
static JS::NonnullGCPtr<GainNode> construct_impl(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>, GainOptions const& = {});
|
||||
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 1; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 1; }
|
||||
|
||||
JS::NonnullGCPtr<AudioParam const> gain() const { return m_gain; }
|
||||
|
||||
protected:
|
||||
|
|
|
@ -34,6 +34,8 @@ public:
|
|||
WebIDL::ExceptionOr<void> set_type(Bindings::OscillatorType);
|
||||
|
||||
JS::NonnullGCPtr<AudioParam const> frequency() const { return m_frequency; }
|
||||
WebIDL::UnsignedLong number_of_inputs() override { return 0; }
|
||||
WebIDL::UnsignedLong number_of_outputs() override { return 1; }
|
||||
|
||||
protected:
|
||||
OscillatorNode(JS::Realm&, JS::NonnullGCPtr<BaseAudioContext>, OscillatorOptions const& = {});
|
||||
|
|
Loading…
Reference in a new issue