Update To 11.40.268.0
[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_