| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ | 5 #ifndef PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ |
| 6 #define PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ | 6 #define PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ |
| 7 | 7 |
| 8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "ppapi/shared_impl/resource.h" | 10 #include "ppapi/shared_impl/resource.h" |
| 11 #include "ppapi/thunk/ppb_audio_config_api.h" | 11 #include "ppapi/thunk/ppb_audio_config_api.h" |
| 12 | 12 |
| 13 namespace ppapi { | 13 namespace ppapi { |
| 14 | 14 |
| 15 const int kBitsPerAudioInputSample = 16; | 15 const int kBitsPerAudioInputSample = 16; |
| 16 const int kAudioInputChannels = 1; | 16 const int kAudioInputChannels = 1; |
| 17 | 17 |
| 18 // TODO(dalecurtis, yzshen): PPAPI shouldn't hard code these values for all | 18 // TODO(dalecurtis, yzshen): PPAPI shouldn't hard code these values for all |
| 19 // clients. | 19 // clients. |
| 20 const int kBitsPerAudioOutputSample = 16; | 20 const int kBitsPerAudioOutputSample = 16; |
| 21 const int kAudioOutputChannels = 2; | 21 const int kAudioOutputChannels = 2; |
| 22 | 22 |
| 23 class PPAPI_SHARED_EXPORT PPB_AudioConfig_Shared | 23 class PPAPI_SHARED_EXPORT PPB_AudioConfig_Shared |
| 24 : public Resource, | 24 : public Resource, |
| 25 public thunk::PPB_AudioConfig_API { | 25 public thunk::PPB_AudioConfig_API { |
| 26 public: | 26 public: |
| 27 virtual ~PPB_AudioConfig_Shared(); | 27 ~PPB_AudioConfig_Shared() override; |
| 28 | 28 |
| 29 static PP_Resource Create(ResourceObjectType type, | 29 static PP_Resource Create(ResourceObjectType type, |
| 30 PP_Instance instance, | 30 PP_Instance instance, |
| 31 PP_AudioSampleRate sample_rate, | 31 PP_AudioSampleRate sample_rate, |
| 32 uint32_t sample_frame_count); | 32 uint32_t sample_frame_count); |
| 33 static uint32_t RecommendSampleFrameCount_1_0( | 33 static uint32_t RecommendSampleFrameCount_1_0( |
| 34 PP_AudioSampleRate sample_rate, | 34 PP_AudioSampleRate sample_rate, |
| 35 uint32_t request_sample_frame_count); | 35 uint32_t request_sample_frame_count); |
| 36 static uint32_t RecommendSampleFrameCount_1_1( | 36 static uint32_t RecommendSampleFrameCount_1_1( |
| 37 PP_Instance instance, | 37 PP_Instance instance, |
| 38 PP_AudioSampleRate sample_rate, | 38 PP_AudioSampleRate sample_rate, |
| 39 uint32_t request_sample_frame_count); | 39 uint32_t request_sample_frame_count); |
| 40 static PP_AudioSampleRate RecommendSampleRate(PP_Instance); | 40 static PP_AudioSampleRate RecommendSampleRate(PP_Instance); |
| 41 | 41 |
| 42 // Resource overrides. | 42 // Resource overrides. |
| 43 virtual thunk::PPB_AudioConfig_API* AsPPB_AudioConfig_API() override; | 43 thunk::PPB_AudioConfig_API* AsPPB_AudioConfig_API() override; |
| 44 | 44 |
| 45 // PPB_AudioConfig_API implementation. | 45 // PPB_AudioConfig_API implementation. |
| 46 virtual PP_AudioSampleRate GetSampleRate() override; | 46 PP_AudioSampleRate GetSampleRate() override; |
| 47 virtual uint32_t GetSampleFrameCount() override; | 47 uint32_t GetSampleFrameCount() override; |
| 48 | 48 |
| 49 private: | 49 private: |
| 50 // You must call Init before using this object. | 50 // You must call Init before using this object. |
| 51 PPB_AudioConfig_Shared(ResourceObjectType type, PP_Instance instance); | 51 PPB_AudioConfig_Shared(ResourceObjectType type, PP_Instance instance); |
| 52 | 52 |
| 53 // Returns false if the arguments are invalid, the object should not be | 53 // Returns false if the arguments are invalid, the object should not be |
| 54 // used in this case. | 54 // used in this case. |
| 55 bool Init(PP_AudioSampleRate sample_rate, uint32_t sample_frame_count); | 55 bool Init(PP_AudioSampleRate sample_rate, uint32_t sample_frame_count); |
| 56 | 56 |
| 57 PP_AudioSampleRate sample_rate_; | 57 PP_AudioSampleRate sample_rate_; |
| 58 uint32_t sample_frame_count_; | 58 uint32_t sample_frame_count_; |
| 59 | 59 |
| 60 DISALLOW_COPY_AND_ASSIGN(PPB_AudioConfig_Shared); | 60 DISALLOW_COPY_AND_ASSIGN(PPB_AudioConfig_Shared); |
| 61 }; | 61 }; |
| 62 | 62 |
| 63 } // namespace ppapi | 63 } // namespace ppapi |
| 64 | 64 |
| 65 #endif // PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ | 65 #endif // PPAPI_SHARED_IMPL_PPB_AUDIO_CONFIG_SHARED_H_ |
| OLD | NEW |