#include "chrome/browser/ui/global_media_controls/media_notification_device_provider_impl.h"
#include <algorithm>
#include "base/ranges/algorithm.h"
#include "chrome/browser/ui/global_media_controls/media_notification_device_monitor.h"
#include "content/public/browser/audio_service.h"
#include "media/audio/audio_device_description.h"
namespace {
void MaybeRemoveDefaultDevice(media::AudioDeviceDescriptions& descriptions) { … }
}
MediaNotificationDeviceProviderImpl::MediaNotificationDeviceProviderImpl(
std::unique_ptr<media::AudioSystem> audio_system)
: … { … }
MediaNotificationDeviceProviderImpl::~MediaNotificationDeviceProviderImpl() { … }
base::CallbackListSubscription
MediaNotificationDeviceProviderImpl::RegisterOutputDeviceDescriptionsCallback(
GetOutputDevicesCallback cb) { … }
void MediaNotificationDeviceProviderImpl::GetOutputDeviceDescriptions(
media::AudioSystem::OnDeviceDescriptionsCallback cb) { … }
void MediaNotificationDeviceProviderImpl::OnDevicesChanged() { … }
void MediaNotificationDeviceProviderImpl::GetDevices() { … }
void MediaNotificationDeviceProviderImpl::NotifySubscribers(
media::AudioDeviceDescriptions descriptions) { … }
void MediaNotificationDeviceProviderImpl::OnSubscriberRemoved() { … }