| Index: content/common/gpu/media/video_accelerator_unittest_helpers.h
|
| diff --git a/content/common/gpu/media/video_accelerator_unittest_helpers.h b/content/common/gpu/media/video_accelerator_unittest_helpers.h
|
| deleted file mode 100644
|
| index 61e002d73360bf3b4e57f6b9bac5c0cf9cbcd7b8..0000000000000000000000000000000000000000
|
| --- a/content/common/gpu/media/video_accelerator_unittest_helpers.h
|
| +++ /dev/null
|
| @@ -1,63 +0,0 @@
|
| -// Copyright 2013 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -//
|
| -// This file contains helper classes for video accelerator unittests.
|
| -
|
| -#ifndef CONTENT_COMMON_GPU_MEDIA_VIDEO_ACCELERATOR_UNITTEST_HELPERS_H_
|
| -#define CONTENT_COMMON_GPU_MEDIA_VIDEO_ACCELERATOR_UNITTEST_HELPERS_H_
|
| -
|
| -#include <queue>
|
| -
|
| -#include "base/synchronization/condition_variable.h"
|
| -#include "base/synchronization/lock.h"
|
| -
|
| -namespace content {
|
| -
|
| -// Helper class allowing one thread to wait on a notification from another.
|
| -// If notifications come in faster than they are Wait()'d for, they are
|
| -// accumulated (so exactly as many Wait() calls will unblock as Notify() calls
|
| -// were made, regardless of order).
|
| -template <typename StateEnum>
|
| -class ClientStateNotification {
|
| - public:
|
| - ClientStateNotification();
|
| - ~ClientStateNotification();
|
| -
|
| - // Used to notify a single waiter of a ClientState.
|
| - void Notify(StateEnum state);
|
| - // Used by waiters to wait for the next ClientState Notification.
|
| - StateEnum Wait();
|
| -
|
| - private:
|
| - base::Lock lock_;
|
| - base::ConditionVariable cv_;
|
| - std::queue<StateEnum> pending_states_for_notification_;
|
| -};
|
| -
|
| -template <typename StateEnum>
|
| -ClientStateNotification<StateEnum>::ClientStateNotification() : cv_(&lock_) {}
|
| -
|
| -template <typename StateEnum>
|
| -ClientStateNotification<StateEnum>::~ClientStateNotification() {}
|
| -
|
| -template <typename StateEnum>
|
| -void ClientStateNotification<StateEnum>::Notify(StateEnum state) {
|
| - base::AutoLock auto_lock(lock_);
|
| - pending_states_for_notification_.push(state);
|
| - cv_.Signal();
|
| -}
|
| -
|
| -template <typename StateEnum>
|
| -StateEnum ClientStateNotification<StateEnum>::Wait() {
|
| - base::AutoLock auto_lock(lock_);
|
| - while (pending_states_for_notification_.empty())
|
| - cv_.Wait();
|
| - StateEnum ret = pending_states_for_notification_.front();
|
| - pending_states_for_notification_.pop();
|
| - return ret;
|
| -}
|
| -
|
| -} // namespace content
|
| -
|
| -#endif // CONTENT_COMMON_GPU_MEDIA_VIDEO_ACCELERATOR_UNITTEST_HELPERS_H_
|
|
|