| Fling Engine 0.00.1 Fling Engine is a game engine written in Vulkan

Public Member Functions | Private Attributes
Fling::CircularBuffer< T, t_Size > Class Template Reference

A simple circular buffer that will allow you get the next element in a buffer It does not ensure that the item is not in use, but simply loops around. More...

`#include <CircularBuffer.hpp>`

## Public Member Functions
| CircularBuffer ()
| ~CircularBuffer ()=default
T * | GetItem ()

## Private Attributes
const UINT32 | m_BufferSize
T | m_Buffer [t_Size]
UINT32 | m_AllocatedIndex = 0

## Detailed Description

### template<typename T, size_t t_Size>
class Fling::CircularBuffer< T, t_Size >

A simple circular buffer that will allow you get the next element in a buffer It does not ensure that the item is not in use, but simply loops around.

Template Parameters

  T | the type inside this circular buffer. Stack allocated
  t_Size | The max size of this buffer, must be a power of 2!

## Constructor & Destructor Documentation

## ◆ CircularBuffer()

template<typename T , size_t t_Size>

Fling::CircularBuffer< T, t_Size >::CircularBuffer | ( |  | ) |
| inline

## ◆ ~CircularBuffer()

template<typename T , size_t t_Size>

Fling::CircularBuffer< T, t_Size >::~CircularBuffer | ( |  | ) |
| default

## Member Function Documentation

## ◆ GetItem()

template<typename T , size_t t_Size>

T * Fling::CircularBuffer< T, t_Size >::GetItem | ( |  | ) |
| inline

## Field Documentation

## ◆ m_AllocatedIndex

template<typename T , size_t t_Size>

UINT32 Fling::CircularBuffer< T, t_Size >::m_AllocatedIndex = 0
| private

## ◆ m_Buffer

template<typename T , size_t t_Size>

T Fling::CircularBuffer< T, t_Size >::m_Buffer[t_Size]
| private

## ◆ m_BufferSize

template<typename T , size_t t_Size>

const UINT32 Fling::CircularBuffer< T, t_Size >::m_BufferSize
| private

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

- FlingEngine/Utils/inc/CircularBuffer.hpp