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