Roll src/third_party/WebKit a3b4a2e:7441784 (svn 202551:202552)
[chromium-blink-merge.git] / extensions / browser / api / audio / audio_service.cc
blob0e21680e54b387389365e986062f286b68f6ac2b
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.
5 #include "extensions/browser/api/audio/audio_service.h"
7 namespace extensions {
9 class AudioServiceImpl : public AudioService {
10 public:
11 AudioServiceImpl() {}
12 ~AudioServiceImpl() override {}
14 // Called by listeners to this service to add/remove themselves as observers.
15 void AddObserver(Observer* observer) override;
16 void RemoveObserver(Observer* observer) override;
18 // Start to query audio device information.
19 void StartGetInfo(const GetInfoCallback& callback) override;
20 void SetActiveDevices(const DeviceIdList& device_list) override;
21 bool SetDeviceProperties(const std::string& device_id,
22 bool muted,
23 int volume,
24 int gain) override;
27 void AudioServiceImpl::AddObserver(Observer* observer) {
28 // TODO: implement this for platforms other than Chrome OS.
31 void AudioServiceImpl::RemoveObserver(Observer* observer) {
32 // TODO: implement this for platforms other than Chrome OS.
35 AudioService* AudioService::CreateInstance() {
36 return new AudioServiceImpl;
39 void AudioServiceImpl::StartGetInfo(const GetInfoCallback& callback) {
40 // TODO: implement this for platforms other than Chrome OS.
41 if (!callback.is_null())
42 callback.Run(OutputInfo(), InputInfo(), false);
45 void AudioServiceImpl::SetActiveDevices(const DeviceIdList& device_list) {
48 bool AudioServiceImpl::SetDeviceProperties(const std::string& device_id,
49 bool muted,
50 int volume,
51 int gain) {
52 return false;
55 } // namespace extensions