Chromium Code Reviews| Index: chromecast/media/audio/cast_audio_manager_factory.h |
| diff --git a/chromecast/media/audio/cast_audio_manager_factory.h b/chromecast/media/audio/cast_audio_manager_factory.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..1af9775f571a0fc7928652b6a89de858eaf56bad |
| --- /dev/null |
| +++ b/chromecast/media/audio/cast_audio_manager_factory.h |
| @@ -0,0 +1,39 @@ |
| +// Copyright 2015 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. |
| + |
| +#ifndef CHROMECAST_MEDIA_AUDIO_CAST_AUDIO_MANAGER_FACTORY_H_ |
| +#define CHROMECAST_MEDIA_AUDIO_CAST_AUDIO_MANAGER_FACTORY_H_ |
| + |
| +#include "base/macros.h" |
| +#include "media/audio/audio_manager_factory.h" |
| + |
| +namespace chromecast { |
| + |
| +class CastAudioOutputDevice; |
| + |
| +// Implementation of media::AudioManagerFactory which creates an instance of |
| +// CastAudioManager. |
| +class CastAudioManagerFactory : public media::AudioManagerFactory { |
| + public: |
| + // |audio_stream_output_device| is used to provide the AudioManager with audio |
| + // streams. This class does not take ownership of |audio_stream_output_device| |
| + // which must be non-null and must outlive this factory. |
| + explicit CastAudioManagerFactory( |
| + chromecast::CastAudioOutputDevice* audio_stream_output_device); |
| + ~CastAudioManagerFactory() override; |
| + |
| + // Creates and returns a CastAudioManager instance. Caller owns the |
| + // reutrned instance. |
| + media::AudioManager* CreateInstance( |
| + media::AudioLogFactory* audio_log_factory) override; |
| + |
| + private: |
| + chromecast::CastAudioOutputDevice* audio_stream_output_device_; |
|
byungchul
2015/04/27 17:38:06
* const
slan
2015/04/28 00:11:38
Done.
|
| + |
| + DISALLOW_COPY_AND_ASSIGN(CastAudioManagerFactory); |
| +}; |
| + |
| +} // namespace chromecast |
| + |
| +#endif // CHROMECAST_MEDIA_AUDIO_CAST_AUDIO_MANAGER_FACTORY_H_ |