Other Documentation

Wwise SDK 2022.1.4
AK::ObjectPool< T, AllocatorType, LockType > Class Template Reference

An object pool of N reusable objects with one allocation. More...

#include <AkObjectPool.h>

Inheritance diagram for AK::ObjectPool< T, AllocatorType, LockType >:
AkArrayAllocatorNoAlign< T_MEMID > AK::ObjectPoolNoLock


union   DataType

Public Types

using  ValueType = T
using  SizeType = AkUInt32

Public Member Functions

  ObjectPool ()=default
  ObjectPool (const ObjectPool &)=delete
  ObjectPool (ObjectPool &&)=delete
  ~ObjectPool ()
ObjectPool operator= (const ObjectPool &)=delete
ObjectPool operator= (ObjectPool &&)=delete
AKRESULT  Init (SizeType count)
void  Term ()
AK_NODISCARD SizeType  Size () const
AK_NODISCARD SizeType  Capacity () const
AK_NODISCARD bool  IsFull () const
AK_NODISCARD bool  IsEmpty () const
AKRESULT  Deallocate (ValueType *data)
void  Clear ()
AK_NODISCARD ValueType Allocate ()
AK_NODISCARD ValueType AllocateZeroFilled ()
  Initialize memory before returning. More...

Static Public Attributes

static constexpr SizeType  kInvalidIndex = (SizeType)-1


struct  UnitTest::ObjectPoolHelper

Detailed Description

template<typename T, typename AllocatorType = ObjectPoolDefaultAllocator<>, typename LockType = ObjectPoolDefaultLockType>
class AK::ObjectPool< T, AllocatorType, LockType >

An object pool of N reusable objects with one allocation.

Definition at line 58 of file AkObjectPool.h.

Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise