New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 733370 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Jun 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

TailTime() and LatencyTime() should be pure virtual

Project Member Reported by rtoy@chromium.org, Jun 14 2017

Issue description

The methods AudioNode::TailTime() and AudioNode::LatencyTime() should probably be pure virtual methods so that each derived node class must implement its own version instead of inheriting a default from AudioNode, which is probably wrong.
 
Owner: shanmug...@samsung.com
Status: Assigned (was: Available)
There are many derived classes is not overriding these methods.
Such as 
AnalyserNode,
AudioBuffferSourceNode.h
ChannelMergerNode.h
ChannelSplitterNode.h
ConstantSourceNode.h
DefaultAudioDestinationNode.h
....
and list continues.

By making these methods as pure virtual methods, we need to add
  double TailTime() const override { return 0; }
  double LatencyTime() const override { return 0; }
in all these classes.. 

rtoy@
Shall I change all these classes ? 
Project Member

Comment 3 by bugdroid1@chromium.org, Jun 29 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/932d94a4b055c97d2e4a33363d0934340904b4e6

commit 932d94a4b055c97d2e4a33363d0934340904b4e6
Author: Shanmuga Pandi M <shanmuga.m@samsung.com>
Date: Thu Jun 29 11:01:08 2017

Make AudioNode::TailTime() and AudioNode::LatencyTime() as pure virtual.

Making AudioNode::TailTime() and AudioNode::LatencyTime()
as pure virtual methods, so that derived node class
must implement its own version instead of inheriting
a default from AudioNode, which is probably wrong.

Bug:  733370 
Change-Id: I1ccc9388768a1a0e6883d90c619ca13f58c98876
Reviewed-on: https://chromium-review.googlesource.com/549680
Reviewed-by: Raymond Toy <rtoy@chromium.org>
Commit-Queue: Shanmuga Pandi <shanmuga.m@samsung.com>
Cr-Commit-Position: refs/heads/master@{#483320}
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/AudioBasicInspectorNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/AudioNode.cpp
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/AudioNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/AudioScheduledSourceNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/ChannelMergerNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/ChannelSplitterNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/DefaultAudioDestinationNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/GainNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/MediaElementAudioSourceNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/MediaStreamAudioSourceNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/OfflineAudioDestinationNode.h
[modify] https://crrev.com/932d94a4b055c97d2e4a33363d0934340904b4e6/third_party/WebKit/Source/modules/webaudio/StereoPannerNode.h

Status: Fixed (was: Assigned)

Sign in to add a comment