![]() |
TrinityCore
|
#include <MPSCQueue.h>
Public Member Functions | |
| MPSCQueueIntrusive () | |
| ~MPSCQueueIntrusive () | |
| void | Enqueue (T *input) |
| bool | Dequeue (T *&result) |
Private Member Functions | |
| MPSCQueueIntrusive (MPSCQueueIntrusive const &)=delete | |
| MPSCQueueIntrusive & | operator= (MPSCQueueIntrusive const &)=delete |
Private Attributes | |
| std::aligned_storage_t< sizeof(T), alignof(T)> | _dummy |
| T * | _dummyPtr |
| std::atomic< T * > | _head |
| std::atomic< T * > | _tail |
Definition at line 93 of file MPSCQueue.h.
|
inline |
Definition at line 96 of file MPSCQueue.h.
References Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::_dummyPtr.
|
inline |
Definition at line 104 of file MPSCQueue.h.
References Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Dequeue().
|
privatedelete |
|
inline |
Definition at line 118 of file MPSCQueue.h.
References Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::_dummyPtr, Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::_head, Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::_tail, and Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Enqueue().
Referenced by Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::~MPSCQueueIntrusive().
|
inline |
Definition at line 111 of file MPSCQueue.h.
References Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::_head.
Referenced by Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Dequeue().
|
privatedelete |
|
private |
Definition at line 155 of file MPSCQueue.h.
|
private |
Definition at line 156 of file MPSCQueue.h.
Referenced by Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Dequeue(), and Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::MPSCQueueIntrusive().
|
private |
Definition at line 157 of file MPSCQueue.h.
Referenced by Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Dequeue(), and Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Enqueue().
|
private |
Definition at line 158 of file MPSCQueue.h.
Referenced by Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >::Dequeue().