summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/angle/src/libANGLE/WorkerThread.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/3rdparty/angle/src/libANGLE/WorkerThread.cpp')
-rw-r--r--src/3rdparty/angle/src/libANGLE/WorkerThread.cpp157
1 files changed, 0 insertions, 157 deletions
diff --git a/src/3rdparty/angle/src/libANGLE/WorkerThread.cpp b/src/3rdparty/angle/src/libANGLE/WorkerThread.cpp
deleted file mode 100644
index b5d789ef93..0000000000
--- a/src/3rdparty/angle/src/libANGLE/WorkerThread.cpp
+++ /dev/null
@@ -1,157 +0,0 @@
-//
-// Copyright 2016 The ANGLE Project Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-//
-// WorkerThread:
-// Task running thread for ANGLE, similar to a TaskRunner in Chromium.
-// Might be implemented differently depending on platform.
-//
-
-#include "libANGLE/WorkerThread.h"
-
-namespace angle
-{
-
-namespace priv
-{
-// SingleThreadedWorkerPool implementation.
-SingleThreadedWorkerPool::SingleThreadedWorkerPool(size_t maxThreads)
- : WorkerThreadPoolBase(maxThreads)
-{
-}
-
-SingleThreadedWorkerPool::~SingleThreadedWorkerPool()
-{
-}
-
-SingleThreadedWaitableEvent SingleThreadedWorkerPool::postWorkerTaskImpl(Closure *task)
-{
- (*task)();
- return SingleThreadedWaitableEvent(EventResetPolicy::Automatic, EventInitialState::Signaled);
-}
-
-// SingleThreadedWaitableEvent implementation.
-SingleThreadedWaitableEvent::SingleThreadedWaitableEvent()
- : SingleThreadedWaitableEvent(EventResetPolicy::Automatic, EventInitialState::NonSignaled)
-{
-}
-
-SingleThreadedWaitableEvent::SingleThreadedWaitableEvent(EventResetPolicy resetPolicy,
- EventInitialState initialState)
- : WaitableEventBase(resetPolicy, initialState)
-{
-}
-
-SingleThreadedWaitableEvent::~SingleThreadedWaitableEvent()
-{
-}
-
-SingleThreadedWaitableEvent::SingleThreadedWaitableEvent(SingleThreadedWaitableEvent &&other)
- : WaitableEventBase(std::move(other))
-{
-}
-
-SingleThreadedWaitableEvent &SingleThreadedWaitableEvent::operator=(
- SingleThreadedWaitableEvent &&other)
-{
- return copyBase(std::move(other));
-}
-
-void SingleThreadedWaitableEvent::resetImpl()
-{
- mSignaled = false;
-}
-
-void SingleThreadedWaitableEvent::waitImpl()
-{
-}
-
-void SingleThreadedWaitableEvent::signalImpl()
-{
- mSignaled = true;
-}
-
-#if (ANGLE_STD_ASYNC_WORKERS == ANGLE_ENABLED)
-// AsyncWorkerPool implementation.
-AsyncWorkerPool::AsyncWorkerPool(size_t maxThreads) : WorkerThreadPoolBase(maxThreads)
-{
-}
-
-AsyncWorkerPool::~AsyncWorkerPool()
-{
-}
-
-AsyncWaitableEvent AsyncWorkerPool::postWorkerTaskImpl(Closure *task)
-{
- auto future = std::async(std::launch::async, [task] { (*task)(); });
-
- AsyncWaitableEvent waitable(EventResetPolicy::Automatic, EventInitialState::NonSignaled);
-
- waitable.setFuture(std::move(future));
-
- return waitable;
-}
-
-// AsyncWaitableEvent implementation.
-AsyncWaitableEvent::AsyncWaitableEvent()
- : AsyncWaitableEvent(EventResetPolicy::Automatic, EventInitialState::NonSignaled)
-{
-}
-
-AsyncWaitableEvent::AsyncWaitableEvent(EventResetPolicy resetPolicy, EventInitialState initialState)
- : WaitableEventBase(resetPolicy, initialState)
-{
-}
-
-AsyncWaitableEvent::~AsyncWaitableEvent()
-{
-}
-
-AsyncWaitableEvent::AsyncWaitableEvent(AsyncWaitableEvent &&other)
- : WaitableEventBase(std::move(other)), mFuture(std::move(other.mFuture))
-{
-}
-
-AsyncWaitableEvent &AsyncWaitableEvent::operator=(AsyncWaitableEvent &&other)
-{
- std::swap(mFuture, other.mFuture);
- return copyBase(std::move(other));
-}
-
-void AsyncWaitableEvent::setFuture(std::future<void> &&future)
-{
- mFuture = std::move(future);
-}
-
-void AsyncWaitableEvent::resetImpl()
-{
- mSignaled = false;
- mFuture = std::future<void>();
-}
-
-void AsyncWaitableEvent::waitImpl()
-{
- if (mSignaled || !mFuture.valid())
- {
- return;
- }
-
- mFuture.wait();
- signal();
-}
-
-void AsyncWaitableEvent::signalImpl()
-{
- mSignaled = true;
-
- if (mResetPolicy == EventResetPolicy::Automatic)
- {
- reset();
- }
-}
-#endif // (ANGLE_STD_ASYNC_WORKERS == ANGLE_ENABLED)
-
-} // namespace priv
-
-} // namespace angle