ezEngine  Release 25.03
ezInstanceDataAllocator Class Reference

Helper class to manager instance data allocation, construction and destruction. More...

#include <InstanceDataAllocator.h>

Public Member Functions

ezUInt32 AddDesc (const ezInstanceDataDesc &desc)
 Adds the given desc to internal list of data that needs to be allocated and returns the byte offset.
 
void ClearDescs ()
 Resets all internal state.
 
void Construct (ezByteBlobPtr blobPtr) const
 Constructs the instance data objects, within the pre-allocated memory block.
 
void Destruct (ezByteBlobPtr blobPtr) const
 Destructs the instance data objects.
 
ezBlob AllocateAndConstruct () const
 Allocates memory and constructs the instance data objects inside it. The returned ezBlob must be stored somewhere.
 
void DestructAndDeallocate (ezBlob &ref_blob) const
 Destructs and deallocates the instance data objects and the given memory block.
 
ezUInt32 GetTotalDataSize () const
 The total size in bytes taken up by all instance data objects that were added.
 

Static Public Member Functions

static EZ_ALWAYS_INLINE void * GetInstanceData (const ezByteBlobPtr &blobPtr, ezUInt32 uiOffset)
 Retrieves a void pointer to the instance data within the given blob at the given offset, or nullptr if the offset is invalid.
 

Detailed Description

Helper class to manager instance data allocation, construction and destruction.


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