TrinityCore
MPSCQueue.h File Reference
#include <array>
#include <atomic>
#include <new>
+ Include dependency graph for MPSCQueue.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Trinity::Impl::MPSCQueueNonIntrusive< T >
 
struct  Trinity::Impl::MPSCQueueNonIntrusive< T >::Node
 
class  Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >
 

Namespaces

namespace  Trinity
 
namespace  Trinity::Impl
 

Typedefs

template<typename T , std::atomic< T * > T::* IntrusiveLink = nullptr>
using MPSCQueue = std::conditional_t< IntrusiveLink !=nullptr, Trinity::Impl::MPSCQueueIntrusive< T, IntrusiveLink >, Trinity::Impl::MPSCQueueNonIntrusive< T > >
 

Typedef Documentation

◆ MPSCQueue

template<typename T , std::atomic< T * > T::* IntrusiveLink = nullptr>
using MPSCQueue = std::conditional_t<IntrusiveLink != nullptr, Trinity::Impl::MPSCQueueIntrusive<T, IntrusiveLink>, Trinity::Impl::MPSCQueueNonIntrusive<T> >

Definition at line 173 of file MPSCQueue.h.