// Copyright 2018 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SERVICES_AUDIO_TEST_FAKE_LOOPBACK_GROUP_MEMBER_H_ #define SERVICES_AUDIO_TEST_FAKE_LOOPBACK_GROUP_MEMBER_H_ #include <memory> #include <vector> #include "base/memory/raw_ptr.h" #include "base/time/time.h" #include "base/unguessable_token.h" #include "media/base/audio_parameters.h" #include "services/audio/loopback_group_member.h" namespace media { class AudioBus; } namespace audio { // An implementation of LoopbackGroupMember that can be snooped upon. It // generates sine wave tones, configurable per channel. Test procedures call // RenderMoreAudio() to push more data to the Snooper. // // This class is not thread-safe. The caller must guarantee method calls are not // being made simultaneously in multithreaded tests. class FakeLoopbackGroupMember : public LoopbackGroupMember { … }; } // namespace audio #endif // SERVICES_AUDIO_TEST_FAKE_LOOPBACK_GROUP_MEMBER_H_