C/C++ API Reference
Loading...
Searching...
No Matches
pw::FixedQueue< T, kInlineCapacity, SizeType > Class Template Referencefinal

Overview

template<typename T, size_t kInlineCapacity = containers::kExternalStorage, typename SizeType = typename Queue<T>::size_type>
class pw::FixedQueue< T, kInlineCapacity, SizeType >

Queue implementation equivalent to pw::FixedDeque.

Template Parameters
TThe type of elements stored in the queue.
kCapacityThe maximum number of elements the queue can hold. If set to containers::kExternalStorage, the queue storage will be outside the object.
SizeTypeThe type used to store the size of the queue.
Inheritance diagram for pw::FixedQueue< T, kInlineCapacity, SizeType >:
pw::containers::internal::ArrayStorage< T, kCapacity > pw::Queue< T, SizeType > pw::containers::internal::GenericQueue< Derived, Deque >

Public Member Functions

constexpr FixedQueue ()
 
 FixedQueue (const FixedQueue &)=delete
 
FixedQueueoperator= (const FixedQueue &)=delete
 
constexpr FixedQueue (FixedQueue &&other) noexcept
 
constexpr FixedQueueoperator= (FixedQueue &&other) noexcept
 
template<size_t kOtherCapacity>
 MoveItemsFrom (other)
 
template<size_t kOtherCapacity>
 clear ()
 
this MoveItemsFrom (other)
 
template<size_t kOtherCapacity>
void swap (FixedQueue< T, kOtherCapacity, SizeType > &other)
 
constexpr Deallocatordeallocator () const
 Returns nullptr; a FixedQueue with static storage never allocates.
 
- Public Member Functions inherited from pw::Queue< T, SizeType >
constexpr Queue (span< std::byte > unaligned_buffer) noexcept
 
template<size_t kAlignment, size_t kSizeBytes>
constexpr Queue (containers::Storage< kAlignment, kSizeBytes > &storage) noexcept
 
 Queue (const Queue &)=delete
 
Queueoperator= (const Queue &)=delete
 
 Queue (Queue &&)=delete
 
Queueoperator= (Queue &&)=delete
 
- Public Member Functions inherited from pw::containers::internal::GenericQueue< Derived, Deque >
reference front ()
 
const_reference front () const
 
reference back ()
 
const_reference back () const
 
bool empty () const noexcept
 
constexpr bool full () const noexcept
 
size_type size () const noexcept
 
size_type max_size () const noexcept
 
size_type capacity () const noexcept
 
void clear ()
 Removes all elements from the queue.
 
void push (const value_type &value)
 
void push (value_type &&value)
 
template<typename... Args>
void emplace (Args &&... args)
 
void pop ()
 

Public Attributes

return * this
 

Additional Inherited Members

- Public Types inherited from pw::containers::internal::GenericQueue< Derived, Deque >
using const_iterator = typename Deque::const_iterator
 
using const_pointer = typename Deque::const_pointer
 
using const_reference = typename Deque::const_reference
 
using difference_type = typename Deque::difference_type
 
using iterator = typename Deque::iterator
 
using pointer = typename Deque::pointer
 
using reference = typename Deque::reference
 
using size_type = typename Deque::size_type
 
using value_type = typename Deque::value_type
 
- Protected Member Functions inherited from pw::containers::internal::GenericQueue< Derived, Deque >
constexpr Dequedeque ()
 
constexpr const Dequedeque () const
 

The documentation for this class was generated from the following file: