// Copyright 2014 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include "ppapi/cpp/audio_buffer.h" #include "ppapi/cpp/module.h" #include "ppapi/cpp/module_impl.h" namespace pp { namespace { template <> const char* interface_name() { return PPB_AUDIOBUFFER_INTERFACE_0_1; } } // namespace AudioBuffer::AudioBuffer() { } AudioBuffer::AudioBuffer(const AudioBuffer& other) : Resource(other) { } AudioBuffer::AudioBuffer(const Resource& resource) : Resource(resource) { } AudioBuffer::AudioBuffer(PassRef, PP_Resource resource) : Resource(PASS_REF, resource) { } AudioBuffer::~AudioBuffer() { } PP_TimeDelta AudioBuffer::GetTimestamp() const { if (has_interface()) return get_interface()->GetTimestamp(pp_resource()); return 0.0; } void AudioBuffer::SetTimestamp(PP_TimeDelta timestamp) { if (has_interface()) { get_interface()->SetTimestamp(pp_resource(), timestamp); } } PP_AudioBuffer_SampleRate AudioBuffer::GetSampleRate() const { if (has_interface()) return get_interface()->GetSampleRate(pp_resource()); return PP_AUDIOBUFFER_SAMPLERATE_UNKNOWN; } PP_AudioBuffer_SampleSize AudioBuffer::GetSampleSize() const { if (has_interface()) return get_interface()->GetSampleSize(pp_resource()); return PP_AUDIOBUFFER_SAMPLESIZE_UNKNOWN; } uint32_t AudioBuffer::GetNumberOfChannels() const { if (has_interface()) { return get_interface()->GetNumberOfChannels( pp_resource()); } return 0; } uint32_t AudioBuffer::GetNumberOfSamples() const { if (has_interface()) { return get_interface()->GetNumberOfSamples( pp_resource()); } return 0; } void* AudioBuffer::GetDataBuffer() { if (has_interface()) return get_interface()->GetDataBuffer(pp_resource()); return NULL; } uint32_t AudioBuffer::GetDataBufferSize() const { if (has_interface()) { return get_interface()->GetDataBufferSize( pp_resource()); } return 0; } } // namespace pp