ChatPlexSDK-BS 1.0.1-v6.2.0
C++ ChatPlex BeatSaber SDK
Loading...
Searching...
No Matches
IObjectPool.hpp
1#pragma once
2
3#include "../Utils/Il2cpp.hpp"
4
5namespace CP_SDK::Pool {
6
9 template<class t_Type>
11 {
12 CP_SDK_NO_DEF_CTORS(IObjectPool);
13
14 protected:
15 CP_SDK_PRIV_TAG();
16
18 IObjectPool(CP_SDK_PRIV_TAG_ARG()) {}
20 virtual ~IObjectPool() {}
21
22 public:
24 virtual int CountInactive() = 0;
25
26 public:
28 virtual t_Type Get() = 0;
31 virtual void Release(t_Type& p_Element) = 0;
32
33 public:
35 virtual void Clear() = 0;
36
37 };
38
39}
Object pool interface.
virtual void Release(t_Type &p_Element)=0
Release an element.
virtual t_Type Get()=0
Simple get.
virtual int CountInactive()=0
Released element.
virtual void Clear()=0
Clear the object pool.
IObjectPool(CP_SDK_PRIV_TAG_ARG())
Constructor.
virtual ~IObjectPool()
Destructor.
Memory management & pools utilities.