chromium/media/audio/aecdump_recording_manager.h

// Copyright 2022 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef MEDIA_AUDIO_AECDUMP_RECORDING_MANAGER_H_
#define MEDIA_AUDIO_AECDUMP_RECORDING_MANAGER_H_

#include <map>

#include "base/files/file.h"
#include "base/functional/callback.h"
#include "base/memory/weak_ptr.h"
#include "media/base/media_export.h"

namespace base {
class SingleThreadTaskRunner;
}

namespace media {

class AecdumpRecordingSource {};

// Manages diagnostic audio processing recordings (so-called aecdumps).
// Aecdump recording sources implement the AecdumpRecordingSource interface and
// register/deregister with the AecdumpRecordingManager.
// All operations, including creation and destruction, must happen on the same
// thread as the |task_runner| provided in the constructor.
class MEDIA_EXPORT AecdumpRecordingManager {};

}  // namespace media

#endif  // MEDIA_AUDIO_AECDUMP_RECORDING_MANAGER_H_