Game Framework  2021.05.31
IObjectPool< T > 模板接口 参考

对象池接口。 更多...

Public 成员函数

void Register (T obj, bool spawned)
 创建对象。 更多...
 
bool CanSpawn ()
 检查对象。 更多...
 
bool CanSpawn (string name)
 检查对象。 更多...
 
Spawn ()
 获取对象。 更多...
 
Spawn (string name)
 获取对象。 更多...
 
void Unspawn (T obj)
 回收对象。 更多...
 
void Unspawn (object target)
 回收对象。 更多...
 
void SetLocked (T obj, bool locked)
 设置对象是否被加锁。 更多...
 
void SetLocked (object target, bool locked)
 设置对象是否被加锁。 更多...
 
void SetPriority (T obj, int priority)
 设置对象的优先级。 更多...
 
void SetPriority (object target, int priority)
 设置对象的优先级。 更多...
 
bool ReleaseObject (T obj)
 释放对象。 更多...
 
bool ReleaseObject (object target)
 释放对象。 更多...
 
void Release ()
 释放对象池中的可释放对象。 更多...
 
void Release (int toReleaseCount)
 释放对象池中的可释放对象。 更多...
 
void Release (ReleaseObjectFilterCallback< T > releaseObjectFilterCallback)
 释放对象池中的可释放对象。 更多...
 
void Release (int toReleaseCount, ReleaseObjectFilterCallback< T > releaseObjectFilterCallback)
 释放对象池中的可释放对象。 更多...
 
void ReleaseAllUnused ()
 释放对象池中的所有未使用对象。 更多...
 

属性

string Name [get]
 获取对象池名称。 更多...
 
string FullName [get]
 获取对象池完整名称。 更多...
 
Type ObjectType [get]
 获取对象池对象类型。 更多...
 
int Count [get]
 获取对象池中对象的数量。 更多...
 
int CanReleaseCount [get]
 获取对象池中能被释放的对象的数量。 更多...
 
bool AllowMultiSpawn [get]
 获取是否允许对象被多次获取。 更多...
 
float AutoReleaseInterval [get, set]
 获取或设置对象池自动释放可释放对象的间隔秒数。 更多...
 
int Capacity [get, set]
 获取或设置对象池的容量。 更多...
 
float ExpireTime [get, set]
 获取或设置对象池对象过期秒数。 更多...
 
int Priority [get, set]
 获取或设置对象池的优先级。 更多...
 

详细描述

对象池接口。

模板参数
T对象类型。
类型限制
T :ObjectBase 

成员函数说明

◆ CanSpawn() [1/2]

bool CanSpawn ( )

检查对象。

返回
要检查的对象是否存在。

◆ CanSpawn() [2/2]

bool CanSpawn ( string  name)

检查对象。

参数
name对象名称。
返回
要检查的对象是否存在。

◆ Register()

void Register ( obj,
bool  spawned 
)

创建对象。

参数
obj对象。
spawned对象是否已被获取。

◆ Release() [1/4]

void Release ( )

释放对象池中的可释放对象。

◆ Release() [2/4]

void Release ( int  toReleaseCount)

释放对象池中的可释放对象。

参数
toReleaseCount尝试释放对象数量。

◆ Release() [3/4]

void Release ( int  toReleaseCount,
ReleaseObjectFilterCallback< T >  releaseObjectFilterCallback 
)

释放对象池中的可释放对象。

参数
toReleaseCount尝试释放对象数量。
releaseObjectFilterCallback释放对象筛选函数。

◆ Release() [4/4]

void Release ( ReleaseObjectFilterCallback< T >  releaseObjectFilterCallback)

释放对象池中的可释放对象。

参数
releaseObjectFilterCallback释放对象筛选函数。

◆ ReleaseAllUnused()

void ReleaseAllUnused ( )

释放对象池中的所有未使用对象。

◆ ReleaseObject() [1/2]

bool ReleaseObject ( object  target)

释放对象。

参数
target要释放的对象。
返回
释放对象是否成功。

◆ ReleaseObject() [2/2]

bool ReleaseObject ( obj)

释放对象。

参数
obj要释放的对象。
返回
释放对象是否成功。

◆ SetLocked() [1/2]

void SetLocked ( object  target,
bool  locked 
)

设置对象是否被加锁。

参数
target要设置被加锁的对象。
locked是否被加锁。

◆ SetLocked() [2/2]

void SetLocked ( obj,
bool  locked 
)

设置对象是否被加锁。

参数
obj要设置被加锁的对象。
locked是否被加锁。

◆ SetPriority() [1/2]

void SetPriority ( object  target,
int  priority 
)

设置对象的优先级。

参数
target要设置优先级的对象。
priority优先级。

◆ SetPriority() [2/2]

void SetPriority ( obj,
int  priority 
)

设置对象的优先级。

参数
obj要设置优先级的对象。
priority优先级。

◆ Spawn() [1/2]

T Spawn ( )

获取对象。

返回
要获取的对象。

◆ Spawn() [2/2]

T Spawn ( string  name)

获取对象。

参数
name对象名称。
返回
要获取的对象。

◆ Unspawn() [1/2]

void Unspawn ( object  target)

回收对象。

参数
target要回收的对象。

◆ Unspawn() [2/2]

void Unspawn ( obj)

回收对象。

参数
obj要回收的对象。

属性说明

◆ AllowMultiSpawn

bool AllowMultiSpawn
get

获取是否允许对象被多次获取。

◆ AutoReleaseInterval

float AutoReleaseInterval
getset

获取或设置对象池自动释放可释放对象的间隔秒数。

◆ CanReleaseCount

int CanReleaseCount
get

获取对象池中能被释放的对象的数量。

◆ Capacity

int Capacity
getset

获取或设置对象池的容量。

◆ Count

int Count
get

获取对象池中对象的数量。

◆ ExpireTime

float ExpireTime
getset

获取或设置对象池对象过期秒数。

◆ FullName

string FullName
get

获取对象池完整名称。

◆ Name

string Name
get

获取对象池名称。

◆ ObjectType

Type ObjectType
get

获取对象池对象类型。

◆ Priority

int Priority
getset

获取或设置对象池的优先级。