- add sources.
[platform/framework/web/crosswalk.git] / src / chromeos / audio / audio_devices_pref_handler_stub.h
1 // Copyright (c) 2013 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.
4
5 #ifndef CHROMEOS_AUDIO_AUDIO_DEVICES_PREF_HANDLER_STUB_H_
6 #define CHROMEOS_AUDIO_AUDIO_DEVICES_PREF_HANDLER_STUB_H_
7
8 #include "chromeos/audio/audio_devices_pref_handler.h"
9
10 #include <map>
11
12 namespace chromeos {
13
14 struct AudioDevice;
15
16 // Stub class for AudioDevicesPrefHandler, used for testing.
17 class CHROMEOS_EXPORT AudioDevicesPrefHandlerStub
18     : public AudioDevicesPrefHandler {
19  public:
20   typedef std::map<uint64, bool> AudioDeviceMute;
21   typedef std::map<uint64, int> AudioDeviceVolumeGain;
22
23   AudioDevicesPrefHandlerStub();
24
25   virtual double GetOutputVolumeValue(const AudioDevice* device) OVERRIDE;
26   virtual double GetInputGainValue(const AudioDevice* device) OVERRIDE;
27   virtual void SetVolumeGainValue(const AudioDevice& device,
28                                   double value) OVERRIDE;
29   virtual bool GetMuteValue(const AudioDevice& device) OVERRIDE;
30   virtual void SetMuteValue(const AudioDevice& device, bool mute_on) OVERRIDE;
31   virtual bool GetAudioCaptureAllowedValue() OVERRIDE;
32   virtual bool GetAudioOutputAllowedValue() OVERRIDE;
33   virtual void AddAudioPrefObserver(AudioPrefObserver* observer) OVERRIDE;
34   virtual void RemoveAudioPrefObserver(AudioPrefObserver* observer) OVERRIDE;
35
36  protected:
37   virtual ~AudioDevicesPrefHandlerStub();
38
39  private:
40   AudioDeviceMute audio_device_mute_map_;
41   AudioDeviceVolumeGain audio_device_volume_gain_map_;
42
43   DISALLOW_COPY_AND_ASSIGN(AudioDevicesPrefHandlerStub);
44 };
45
46 }  // namespace chromeos
47
48 #endif  // CHROMEOS_AUDIO_AUDIO_DEVICES_PREF_HANDLER_STUB_H_