MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ empty()

template<typename T , typename StoragePolicy , typename ConcurrencyPolicy = SingleThreadedPolicy, typename AccessPattern = QueueAccess>
bool MayaFlux::Memory::RingBuffer< T, StoragePolicy, ConcurrencyPolicy, AccessPattern >::empty ( ) const
inlinenoexcept

Check if buffer is empty.

Returns
true if no elements present

Definition at line 939 of file RingBuffer.hpp.

940 {
941 if constexpr (is_lock_free) {
942 return m_state.read_index.load(std::memory_order_acquire) == m_state.write_index.load(std::memory_order_acquire);
943 } else {
944 return m_state.read_index == m_state.write_index;
945 }
946 }
static constexpr bool is_lock_free

References MayaFlux::Memory::RingBuffer< T, StoragePolicy, ConcurrencyPolicy, AccessPattern >::is_lock_free, and MayaFlux::Memory::RingBuffer< T, StoragePolicy, ConcurrencyPolicy, AccessPattern >::m_state.