Mixes for Privacy and Anonymity in the Internet
Public Member Functions | Public Attributes | Private Member Functions | List of all members
ReaderWriterQueue::Block Struct Reference

Public Member Functions

AE_NO_TSAN Block (size_t const &_size, UINT8 *_rawThis, UINT8 *_data)
 

Public Attributes

weak_atomic< size_t > front
 
size_t localTail
 
char cachelineFiller0 [MOODYCAMEL_CACHE_LINE_SIZE - sizeof(weak_atomic< size_t >) - sizeof(size_t)]
 
weak_atomic< size_t > tail
 
size_t localFront
 
char cachelineFiller1 [MOODYCAMEL_CACHE_LINE_SIZE - sizeof(weak_atomic< size_t >) - sizeof(size_t)]
 
weak_atomic< Block * > next
 
UINT8 ** data
 
const size_t sizeMask
 
UINT8rawThis
 

Private Member Functions

Blockoperator= (Block const &)
 

Constructor & Destructor Documentation

◆ Block()

AE_NO_TSAN ReaderWriterQueue::Block::Block ( size_t const &  _size,
UINT8 _rawThis,
UINT8 _data 
)

Member Function Documentation

◆ operator=()

Block& ReaderWriterQueue::Block::operator= ( Block const &  )
private

Member Data Documentation

◆ cachelineFiller0

char ReaderWriterQueue::Block::cachelineFiller0[MOODYCAMEL_CACHE_LINE_SIZE - sizeof(weak_atomic< size_t >) - sizeof(size_t)]

◆ cachelineFiller1

char ReaderWriterQueue::Block::cachelineFiller1[MOODYCAMEL_CACHE_LINE_SIZE - sizeof(weak_atomic< size_t >) - sizeof(size_t)]

◆ data

UINT8** ReaderWriterQueue::Block::data

◆ front

weak_atomic<size_t> ReaderWriterQueue::Block::front

◆ localFront

size_t ReaderWriterQueue::Block::localFront

◆ localTail

size_t ReaderWriterQueue::Block::localTail

◆ next

weak_atomic<Block*> ReaderWriterQueue::Block::next

◆ rawThis

UINT8* ReaderWriterQueue::Block::rawThis

◆ sizeMask

const size_t ReaderWriterQueue::Block::sizeMask

◆ tail

weak_atomic<size_t> ReaderWriterQueue::Block::tail