1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef MEDIA_AUDIO_AUDIO_MANAGER_FACTORY_H_
6 #define MEDIA_AUDIO_AUDIO_MANAGER_FACTORY_H_
8 #include "media/base/media_export.h"
13 class AudioLogFactory
;
15 // Allows a platform-specific implementation of AudioManager to be provided in
16 // place of the default implementation at run-time.
17 class MEDIA_EXPORT AudioManagerFactory
{
19 virtual ~AudioManagerFactory() {}
21 // Creates an instance of AudioManager implementation. Caller owns the
22 // returned instance. |audio_log_factory| must outlive the returned instance.
23 virtual AudioManager
* CreateInstance(AudioLogFactory
* audio_log_factory
) = 0;
28 #endif // MEDIA_AUDIO_AUDIO_MANAGER_FACTORY_H_