tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

MediaEngineSource.cpp (2047B)


      1 /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*-*/
      2 /* This Source Code Form is subject to the terms of the Mozilla Public
      3 * License, v. 2.0. If a copy of the MPL was not distributed with this file,
      4 * You can obtain one at http://mozilla.org/MPL/2.0/. */
      5 
      6 #include "MediaEngineSource.h"
      7 
      8 #include "mozilla/dom/MediaTrackCapabilitiesBinding.h"
      9 #include "mozilla/dom/MediaTrackSettingsBinding.h"
     10 
     11 namespace mozilla {
     12 
     13 using dom::MediaSourceEnum;
     14 using dom::MediaTrackSettings;
     15 
     16 // These need a definition somewhere because template
     17 // code is allowed to take their address, and they aren't
     18 // guaranteed to have one without this.
     19 const unsigned int MediaEngineSource::kMaxDeviceNameLength;
     20 const unsigned int MediaEngineSource::kMaxUniqueIdLength;
     21 
     22 /* static */
     23 bool MediaEngineSource::IsVideo(MediaSourceEnum aSource) {
     24  switch (aSource) {
     25    case MediaSourceEnum::Camera:
     26    case MediaSourceEnum::Screen:
     27    case MediaSourceEnum::Window:
     28    case MediaSourceEnum::Browser:
     29      return true;
     30    case MediaSourceEnum::Microphone:
     31    case MediaSourceEnum::AudioCapture:
     32    case MediaSourceEnum::Other:
     33      return false;
     34    default:
     35      MOZ_ASSERT_UNREACHABLE("Unknown type");
     36      return false;
     37  }
     38 }
     39 
     40 /* static */
     41 bool MediaEngineSource::IsAudio(MediaSourceEnum aSource) {
     42  switch (aSource) {
     43    case MediaSourceEnum::Microphone:
     44    case MediaSourceEnum::AudioCapture:
     45      return true;
     46    case MediaSourceEnum::Camera:
     47    case MediaSourceEnum::Screen:
     48    case MediaSourceEnum::Window:
     49    case MediaSourceEnum::Browser:
     50    case MediaSourceEnum::Other:
     51      return false;
     52    default:
     53      MOZ_ASSERT_UNREACHABLE("Unknown type");
     54      return false;
     55  }
     56 }
     57 
     58 bool MediaEngineSource::IsFake() const { return false; }
     59 
     60 nsresult MediaEngineSource::FocusOnSelectedSource() {
     61  return NS_ERROR_NOT_AVAILABLE;
     62 }
     63 
     64 nsresult MediaEngineSource::TakePhoto(MediaEnginePhotoCallback* aCallback) {
     65  return NS_ERROR_NOT_IMPLEMENTED;
     66 }
     67 
     68 MediaEngineSource::~MediaEngineSource() = default;
     69 
     70 }  // namespace mozilla