media/webrtc/signaling/include/CSFAudioControl.h

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 /* This Source Code Form is subject to the terms of the Mozilla Public
     2  * License, v. 2.0. If a copy of the MPL was not distributed with this
     3  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     5 #pragma once
     7 #include "CC_Common.h"
     9 namespace CSF
    10 {
    11         DECLARE_NS_PTR(AudioControl)
    12 	class ECC_API AudioControl
    13 	{
    14 	public:
    15                 NS_INLINE_DECL_THREADSAFE_REFCOUNTING(AudioControl)
    16 		// device names are in UTF-8 encoding
    18 		virtual std::vector<std::string> getRecordingDevices() = 0;
    19 		virtual std::vector<std::string> getPlayoutDevices() = 0;
    21 		virtual std::string getRecordingDevice() = 0;
    22 		virtual std::string getPlayoutDevice() = 0;
    24 		virtual bool setRecordingDevice( const std::string& name ) = 0;
    25 		virtual bool setPlayoutDevice( const std::string& name ) = 0;
    27         virtual bool setDefaultVolume( int ) = 0;
    28         virtual int getDefaultVolume() = 0;
    30         virtual bool setRingerVolume( int ) = 0;
    31         virtual int getRingerVolume() = 0;
    33         virtual ~AudioControl(){};
    34 	};
    35 };

mercurial