JPL Spatial
Sound spatialization and propagation library
Loading...
Searching...
No Matches
JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode > Class Template Reference

Special case for 0-1 MaxWindow doesn't require mirror index. More...

#include <JPLSpatial/Utilities/AbstractIndex.h>

Inheritance diagram for JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >:
JPL::RingImpl::AbstarctRingBase< WriteDirection, OperationMode >

Public Types

using Index = uint32_t
 

Public Member Functions

 AbstractRingIndex (uint32_t minSize)
 
 AbstractRingIndex (const AbstractRingIndex &)=default
 
AbstractRingIndexoperator= (const AbstractRingIndex &)=default
 
uint32_t GetTotalSize () const
 Get total size of the ring buffer.
 
uint32_t GetRingSize () const
 
Index GetCurrent () const
 
void Reset ()
 
Index operator++ ()
 
Index operator++ (int)
 
Index operator-- ()
 
Index operator-- (int)
 
uint32_t GetOffset (int32_t offset) const
 

Detailed Description

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
requires (MaxWindow <= 1)
class JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >

Special case for 0-1 MaxWindow doesn't require mirror index.

Member Typedef Documentation

◆ Index

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
using JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::Index = uint32_t

Constructor & Destructor Documentation

◆ AbstractRingIndex() [1/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::AbstractRingIndex ( uint32_t  minSize)
inlineexplicit

◆ AbstractRingIndex() [2/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::AbstractRingIndex ( const AbstractRingIndex< MaxWindow, WriteDirection, OperationMode > &  )
default

Member Function Documentation

◆ GetCurrent()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
Index JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::GetCurrent ( ) const
inline

◆ GetOffset()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
uint32_t JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::GetOffset ( int32_t  offset) const
inline

◆ GetRingSize()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
uint32_t JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::GetRingSize ( ) const
inline

◆ GetTotalSize()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
uint32_t JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::GetTotalSize ( ) const
inline

Get total size of the ring buffer.

◆ operator++() [1/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
Index JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::operator++ ( )
inline

◆ operator++() [2/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
Index JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::operator++ ( int  )
inline

◆ operator--() [1/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
Index JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::operator-- ( )
inline

◆ operator--() [2/2]

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
Index JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::operator-- ( int  )
inline

◆ operator=()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
AbstractRingIndex & JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::operator= ( const AbstractRingIndex< MaxWindow, WriteDirection, OperationMode > &  )
default

◆ Reset()

template<uint32_t MaxWindow, RingImpl::CWriteDirection auto WriteDirection, RingImpl::COperationMode auto OperationMode>
void JPL::AbstractRingIndex< MaxWindow, WriteDirection, OperationMode >::Reset ( )
inline

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