Add AudioFIFO class and simplify AudioPullFIFO
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 3 Jul 2012 23:40:50 +0000 (23:40 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 3 Jul 2012 23:40:50 +0000 (23:40 +0000)
commit0db45a64731471625a7a5bf21e34d172df9ff4ae
tree8f8c4fd8a555de2bb9190e8b99081e05167e3b60
parente8a2d2afc90c5e54a80656a8f5615956ea23bdb5
Add AudioFIFO class and simplify AudioPullFIFO
https://bugs.webkit.org/show_bug.cgi?id=90398

Patch by Raymond Toy <rtoy@google.com> on 2012-07-03
Reviewed by Chris Rogers.

No new tests. This code will be used in audio back-end implementation.

Add AudioFIFO class to implement main parts of FIFO.  Simplify
implementation of AudioPushFIFO by using AudioFIFO.

* WebCore.gypi: Add new files.

New AudioFIFO class
* platform/audio/AudioFIFO.cpp: Copied from Source/WebCore/platform/audio/AudioPullFIFO.cpp.
(WebCore):
(WebCore::AudioFIFO::AudioFIFO):
(WebCore::AudioFIFO::consume):
(WebCore::AudioFIFO::push):
(WebCore::AudioFIFO::findWrapLengths):
* platform/audio/AudioFIFO.h: Copied from Source/WebCore/platform/audio/AudioPullFIFO.h.
(WebCore):
(AudioFIFO):
(WebCore::AudioFIFO::framesInFifo):
(WebCore::AudioFIFO::updateIndex):

Use AudioFIFO
* platform/audio/AudioPullFIFO.cpp:
(WebCore::AudioPullFIFO::AudioPullFIFO):
(WebCore::AudioPullFIFO::consume):
(WebCore::AudioPullFIFO::fillBuffer):
* platform/audio/AudioPullFIFO.h:
(AudioPullFIFO):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@121810 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/WebCore.gypi
Source/WebCore/platform/audio/AudioFIFO.cpp [new file with mode: 0644]
Source/WebCore/platform/audio/AudioFIFO.h [new file with mode: 0644]
Source/WebCore/platform/audio/AudioPullFIFO.cpp
Source/WebCore/platform/audio/AudioPullFIFO.h