Cogs.Foundation
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
Cogs::Memory::TypedBuffer< T > Class Template Reference

#include <MemoryBuffer.h>

Public Types

typedef T value_type
 

Public Member Functions

 TypedBuffer ()
 
 TypedBuffer (MemBlockType type)
 
 TypedBuffer (Memory::Allocator *allocator, MemBlockType type=MemBlockType::Block)
 
 TypedBuffer (size_t size, MemBlockType type=MemBlockType::Block)
 
 TypedBuffer (size_t size, Memory::Allocator *allocator, MemBlockType type=MemBlockType::Block)
 
 TypedBuffer (const TypedBuffer &)=delete
 
TypedBufferoperator= (const TypedBuffer &)=delete
 
 TypedBuffer (TypedBuffer &&other) noexcept=default
 
TypedBufferoperator= (TypedBuffer &&) noexcept=default
 
bool resize (size_t size, bool keep=true, bool forceRealloc=false)
 
bool reserve (size_t size)
 
Toperator[] (size_t i)
 
const Toperator[] (size_t i) const
 
void swap (TypedBuffer &other)
 
void copy (const TypedBuffer &other)
 
void clear ()
 
Tdata ()
 
const Tdata () const
 
Tbegin ()
 
const Tbegin () const
 
Tend ()
 
const Tend () const
 
size_t size () const
 
bool empty () const
 
size_t byteSize () const
 
Tgrow ()
 

Protected Attributes

MemoryBuffer buffer
 

Member Typedef Documentation

◆ value_type

template<typename T >
typedef T Cogs::Memory::TypedBuffer< T >::value_type

Constructor & Destructor Documentation

◆ TypedBuffer() [1/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( )
inline

◆ TypedBuffer() [2/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( MemBlockType  type)
inline

◆ TypedBuffer() [3/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( Memory::Allocator allocator,
MemBlockType  type = MemBlockType::Block 
)
inline

◆ TypedBuffer() [4/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( size_t  size,
MemBlockType  type = MemBlockType::Block 
)
inline

◆ TypedBuffer() [5/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( size_t  size,
Memory::Allocator allocator,
MemBlockType  type = MemBlockType::Block 
)
inline

◆ TypedBuffer() [6/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( const TypedBuffer< T > &  )
delete

◆ TypedBuffer() [7/7]

template<typename T >
Cogs::Memory::TypedBuffer< T >::TypedBuffer ( TypedBuffer< T > &&  other)
defaultnoexcept

Member Function Documentation

◆ begin() [1/2]

template<typename T >
T * Cogs::Memory::TypedBuffer< T >::begin ( )
inline

◆ begin() [2/2]

template<typename T >
const T * Cogs::Memory::TypedBuffer< T >::begin ( ) const
inline

◆ byteSize()

template<typename T >
size_t Cogs::Memory::TypedBuffer< T >::byteSize ( ) const
inline

◆ clear()

template<typename T >
void Cogs::Memory::TypedBuffer< T >::clear ( )
inline

◆ copy()

template<typename T >
void Cogs::Memory::TypedBuffer< T >::copy ( const TypedBuffer< T > &  other)
inline

◆ data() [1/2]

template<typename T >
T * Cogs::Memory::TypedBuffer< T >::data ( )
inline

◆ data() [2/2]

template<typename T >
const T * Cogs::Memory::TypedBuffer< T >::data ( ) const
inline

◆ empty()

template<typename T >
bool Cogs::Memory::TypedBuffer< T >::empty ( ) const
inline

◆ end() [1/2]

template<typename T >
T * Cogs::Memory::TypedBuffer< T >::end ( )
inline

◆ end() [2/2]

template<typename T >
const T * Cogs::Memory::TypedBuffer< T >::end ( ) const
inline

◆ grow()

template<typename T >
T & Cogs::Memory::TypedBuffer< T >::grow ( )
inline

Grow buffer by one element, return reference to new element.

References Cogs::Memory::TypedBuffer< T >::buffer, Cogs::Memory::MemoryBuffer::grow(), and Cogs::T.

◆ operator=() [1/2]

template<typename T >
TypedBuffer & Cogs::Memory::TypedBuffer< T >::operator= ( const TypedBuffer< T > &  )
delete

◆ operator=() [2/2]

template<typename T >
TypedBuffer & Cogs::Memory::TypedBuffer< T >::operator= ( TypedBuffer< T > &&  )
defaultnoexcept

◆ operator[]() [1/2]

template<typename T >
T & Cogs::Memory::TypedBuffer< T >::operator[] ( size_t  i)
inline

◆ operator[]() [2/2]

template<typename T >
const T & Cogs::Memory::TypedBuffer< T >::operator[] ( size_t  i) const
inline

◆ reserve()

template<typename T >
bool Cogs::Memory::TypedBuffer< T >::reserve ( size_t  size)
inline

◆ resize()

template<typename T >
bool Cogs::Memory::TypedBuffer< T >::resize ( size_t  size,
bool  keep = true,
bool  forceRealloc = false 
)
inline

◆ size()

template<typename T >
size_t Cogs::Memory::TypedBuffer< T >::size ( ) const
inline

◆ swap()

template<typename T >
void Cogs::Memory::TypedBuffer< T >::swap ( TypedBuffer< T > &  other)
inline

Member Data Documentation

◆ buffer

template<typename T >
MemoryBuffer Cogs::Memory::TypedBuffer< T >::buffer
protected

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