10#ifdef RDK_BUILD_THREADSAFE_SSS
11#ifndef CONCURRENT_QUEUE
12#define CONCURRENT_QUEUE
13#include <condition_variable>
64void ConcurrentQueue<E>::push(
const E &
element) {
65 std::unique_lock<std::mutex>
lk(
d_lock);
84bool ConcurrentQueue<E>::pop(E &
element) {
85 std::unique_lock<std::mutex>
lk(
d_lock);
107bool ConcurrentQueue<E>::isEmpty()
const {
108 std::unique_lock<std::mutex>
lk(
d_lock);
113bool ConcurrentQueue<E>::getDone()
const {
114 std::unique_lock<std::mutex>
lk(
d_lock);
119void ConcurrentQueue<E>::setDone() {
120 std::unique_lock<std::mutex>
lk(
d_lock);
126void ConcurrentQueue<E>::clear() {
127 std::unique_lock<std::mutex>
lk(
d_lock);
bool rdvalue_is(const RDValue_cast_t)