Grindstone Game Engine v0.2.0
An open source game engine and toolkit.
Loading...
Searching...
No Matches
Grindstone::ResizableBuffer Class Reference
Inheritance diagram for Grindstone::ResizableBuffer:
Grindstone::Buffer

Public Member Functions

 ResizableBuffer (uint64_t capacity)
 
 ResizableBuffer (const ResizableBuffer &other)
 
 ResizableBuffer (ResizableBuffer &&other) noexcept
 
virtual Grindstone::Containers::BufferSpan GetSpan (uint64_t segmentOffset, uint64_t segmentSize) override
 
template<typename T>
Grindstone::Containers::Span< T > GetSpan (uint64_t offset, uint64_t count)
 
void * AddToBuffer (const void *srcPtr, uint64_t srcSize)
 
uint64_t GetSpaceLeft () const
 
uint64_t GetUsedSize () const
 
- Public Member Functions inherited from Grindstone::Buffer
 Buffer (uint64_t newCapacity)
 
 Buffer (const Buffer &other)
 
 Buffer (Buffer &&other) noexcept
 
void ZeroInitialize ()
 
template<typename T>
Grindstone::Containers::Span< T > GetSpan (uint64_t offset, uint64_t count)
 
template<typename T>
T * Get (uint64_t offset)
 
template<typename T>
const T * Get (uint64_t offset) const
 
Byte * Get (uint64_t offset)
 
Byte * Get (uint64_t offset) const
 
Bufferoperator= (const Buffer &other)
 
Bufferoperator= (Buffer &&other) noexcept
 
Byte & operator[] (int index)
 
Byte operator[] (int index) const
 
 operator bool () const
 
void Clear ()
 
Byte * Get ()
 
const Byte * Get () const
 
uint64_t GetCapacity () const
 

Protected Attributes

Byte * currentPtr = nullptr
 
uint64_t size = 0
 
- Protected Attributes inherited from Grindstone::Buffer
Byte * bufferPtr = nullptr
 
uint64_t capacity = 0
 

Additional Inherited Members

- Static Public Member Functions inherited from Grindstone::Buffer
static Buffer MakeCopiedBuffer (void *srcBufferPtr, const uint64_t capacity)
 
static Buffer MakeMovedBuffer (void *srcBufferPtr, const uint64_t capacity)
 
- Protected Member Functions inherited from Grindstone::Buffer
 Buffer (void *bufferPtr, const uint64_t capacity)
 

Member Function Documentation

◆ GetSpan() [1/2]

template<typename T>
Grindstone::Containers::Span< T > Grindstone::ResizableBuffer::GetSpan ( uint64_t offset,
uint64_t count )
inlinevirtual

Reimplemented from Grindstone::Buffer.

◆ GetSpan() [2/2]

virtual Grindstone::Containers::BufferSpan Grindstone::ResizableBuffer::GetSpan ( uint64_t segmentOffset,
uint64_t segmentSize )
inlineoverridevirtual

Reimplemented from Grindstone::Buffer.


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