Home | History | Annotate | Download | only in audio
      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_
     49