Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::RingBufferSeparateWrite Class Reference

#include <RingBuffer.h>

+ Inheritance diagram for Divide::RingBufferSeparateWrite:

Public Member Functions

 RingBufferSeparateWrite (U16 queueLength, bool separateReadWrite, bool writeAhead=true) noexcept
 
virtual ~RingBufferSeparateWrite ()=default
 
virtual void resize (U16 queueLength)
 
U16 queueLength () const noexcept
 
I32 queueWriteIndex () const noexcept
 
I32 queueReadIndex () const noexcept
 
I32 incQueue () noexcept
 
I32 decQueue () noexcept
 
- Public Member Functions inherited from Divide::NonCopyable
 NonCopyable (const NonCopyable &)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 
 NonCopyable (NonCopyable &&)=default
 
NonCopyableoperator= (NonCopyable &&)=default
 

Private Attributes

U16 _queueLength = 1u
 
const bool _writeAhead = false
 
const bool _separateReadWrite = false
 
std::atomic_int _queueIndex = 0
 

Additional Inherited Members

- Protected Member Functions inherited from Divide::NonCopyable
 NonCopyable ()=default
 
 ~NonCopyable ()=default
 

Detailed Description

Definition at line 38 of file RingBuffer.h.

Constructor & Destructor Documentation

◆ RingBufferSeparateWrite()

Divide::RingBufferSeparateWrite::RingBufferSeparateWrite ( U16  queueLength,
bool  separateReadWrite,
bool  writeAhead = true 
)
explicitnoexcept

Definition at line 7 of file RingBuffer.cpp.

◆ ~RingBufferSeparateWrite()

virtual Divide::RingBufferSeparateWrite::~RingBufferSeparateWrite ( )
virtualdefault

Member Function Documentation

◆ decQueue()

I32 Divide::RingBufferSeparateWrite::decQueue ( )
inlinenoexcept

Definition at line 78 of file RingBuffer.h.

◆ incQueue()

I32 Divide::RingBufferSeparateWrite::incQueue ( )
inlinenoexcept

Definition at line 68 of file RingBuffer.h.

◆ queueLength()

U16 Divide::RingBufferSeparateWrite::queueLength ( ) const
inlinenoexcept

Definition at line 46 of file RingBuffer.h.

◆ queueReadIndex()

I32 Divide::RingBufferSeparateWrite::queueReadIndex ( ) const
inlinenoexcept

Definition at line 63 of file RingBuffer.h.

◆ queueWriteIndex()

I32 Divide::RingBufferSeparateWrite::queueWriteIndex ( ) const
inlinenoexcept

Definition at line 51 of file RingBuffer.h.

◆ resize()

void Divide::RingBufferSeparateWrite::resize ( U16  queueLength)
virtual

Reimplemented in Divide::glHardwareQueryRing.

Definition at line 14 of file RingBuffer.cpp.

Member Data Documentation

◆ _queueIndex

std::atomic_int Divide::RingBufferSeparateWrite::_queueIndex = 0
private

Definition at line 97 of file RingBuffer.h.

◆ _queueLength

U16 Divide::RingBufferSeparateWrite::_queueLength = 1u
private

Definition at line 94 of file RingBuffer.h.

◆ _separateReadWrite

const bool Divide::RingBufferSeparateWrite::_separateReadWrite = false
private

Definition at line 96 of file RingBuffer.h.

◆ _writeAhead

const bool Divide::RingBufferSeparateWrite::_writeAhead = false
private

Definition at line 95 of file RingBuffer.h.


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