aboutsummaryrefslogtreecommitdiff
path: root/src/armnn/AsyncExecutionCallback.hpp
diff options
context:
space:
mode:
authorJim Flynn <jim.flynn@arm.com>2022-03-25 21:24:56 +0000
committerJim Flynn <jim.flynn@arm.com>2022-04-11 14:24:34 +0100
commit870b96c643388ae88dd4245b9169f526d6a8d49e (patch)
tree44a675f1eecdbf0eff40dc4ee623e0a2f03b2f96 /src/armnn/AsyncExecutionCallback.hpp
parentb99799bda8fe0fb0a755eebbe2d02dbb74507c9f (diff)
downloadarmnn-870b96c643388ae88dd4245b9169f526d6a8d49e.tar.gz
IVGCVSW-6707 Enables a bare metal compile
Change-Id: Icc2f83c5f27f413758fee3e5c1445e9fc44f42c8 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Diffstat (limited to 'src/armnn/AsyncExecutionCallback.hpp')
-rw-r--r--src/armnn/AsyncExecutionCallback.hpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/armnn/AsyncExecutionCallback.hpp b/src/armnn/AsyncExecutionCallback.hpp
index 2ff73b3efb..9eab06b4fa 100644
--- a/src/armnn/AsyncExecutionCallback.hpp
+++ b/src/armnn/AsyncExecutionCallback.hpp
@@ -28,12 +28,17 @@ private:
static InferenceId nextID;
public:
- AsyncExecutionCallback(std::queue<InferenceId>& notificationQueue,
- std::mutex& mutex,
- std::condition_variable& condition)
+ AsyncExecutionCallback(std::queue<InferenceId>& notificationQueue
+#if !defined(ARMNN_DISABLE_THREADS)
+ , std::mutex& mutex
+ , std::condition_variable& condition
+#endif
+ )
: m_NotificationQueue(notificationQueue)
+#if !defined(ARMNN_DISABLE_THREADS)
, m_Mutex(mutex)
, m_Condition(condition)
+#endif
, m_InferenceId(++nextID)
{}
@@ -53,8 +58,10 @@ public:
private:
std::queue<InferenceId>& m_NotificationQueue;
+#if !defined(ARMNN_DISABLE_THREADS)
std::mutex& m_Mutex;
std::condition_variable& m_Condition;
+#endif
HighResolutionClock m_StartTime;
HighResolutionClock m_EndTime;
@@ -73,12 +80,14 @@ public:
std::shared_ptr<AsyncExecutionCallback> GetNotifiedCallback();
private:
+#if !defined(ARMNN_DISABLE_THREADS)
std::mutex m_Mutex;
std::condition_variable m_Condition;
+#endif
std::unordered_map<InferenceId, std::shared_ptr<AsyncExecutionCallback>> m_Callbacks;
std::queue<InferenceId> m_NotificationQueue;
};
} // namespace experimental
-} // namespace armnn \ No newline at end of file
+} // namespace armnn