1 // Copyright 2014 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 ASH_SYSTEM_AUDIO_AUDIO_OBSERVER_H_ 6 #define ASH_SYSTEM_AUDIO_AUDIO_OBSERVER_H_ 7 8 namespace ash { 9 10 class AudioObserver { 11 public: ~AudioObserver()12 virtual ~AudioObserver() {} 13 14 // Called when output volume changed. 15 virtual void OnOutputVolumeChanged() = 0; 16 17 // Called when output mute state changed. 18 virtual void OnOutputMuteChanged() = 0; 19 20 // Called when audio nodes changed. 21 virtual void OnAudioNodesChanged() = 0; 22 23 // Called when active audio output node changed. 24 virtual void OnActiveOutputNodeChanged() = 0; 25 26 // Called when active audio input node changed. 27 virtual void OnActiveInputNodeChanged() = 0; 28 }; 29 30 } // namespace ash 31 32 #endif // ASH_SYSTEM_AUDIO_AUDIO_OBSERVER_H_ 33