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
8namespace ash {
9
10class AudioObserver {
11 public:
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