#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/platform/audio/push_pull_fifo.h"
#include <algorithm>
#include <memory>
#include "base/logging.h"
#include "base/metrics/histogram_functions.h"
#include "base/synchronization/lock.h"
#include "build/build_config.h"
#include "third_party/blink/renderer/platform/audio/audio_utilities.h"
#include "third_party/blink/renderer/platform/instrumentation/tracing/trace_event.h"
namespace blink {
namespace {
const unsigned kMaxMessagesToLog = …;
}
PushPullFIFO::PushPullFIFO(unsigned number_of_channels,
uint32_t fifo_length,
unsigned render_quantum_frames)
: … { … }
PushPullFIFO::~PushPullFIFO() { … }
void PushPullFIFO::Push(const AudioBus* input_bus) { … }
size_t PushPullFIFO::Pull(AudioBus* output_bus, uint32_t frames_requested) { … }
PushPullFIFO::PullResult PushPullFIFO::PullAndUpdateEarmark(
AudioBus* output_bus,
uint32_t frames_requested) { … }
const PushPullFIFOStateForTest PushPullFIFO::GetStateForTest() { … }
}