// This file is part of Desktop App Toolkit, // a set of libraries for developing nice desktop applications. // // For license and copyright information please follow this link: // https://github.com/desktop-app/legal/blob/master/LEGAL // #pragma once #include namespace webrtc { class AudioDeviceModule; class TaskQueueFactory; template class scoped_refptr; } // namespace webrtc namespace rtc { template using scoped_refptr = webrtc::scoped_refptr; } // namespace rtc namespace Webrtc { struct DeviceResolvedId; using AudioDeviceModulePtr = rtc::scoped_refptr; AudioDeviceModulePtr CreateAudioDeviceModule( webrtc::TaskQueueFactory* factory, Fn)> saveSetDeviceIdCallback); auto AudioDeviceModuleCreator( Fn)> saveSetDeviceIdCallback) -> std::function; AudioDeviceModulePtr CreateLoopbackAudioDeviceModule( webrtc::TaskQueueFactory* factory); auto LoopbackAudioDeviceModuleCreator() -> std::function; } // namespace Webrtc