OROCHI
 
Loading...
Searching...
No Matches
GxSysResourceAsyncLoad Class Reference

リソース非同期読み込み要求管理クラス More...

#include <GxSysResource.h>

Inheritance diagram for GxSysResourceAsyncLoad:
Collaboration diagram for GxSysResourceAsyncLoad:

Classes

class  GxAsyncLoadThread
 非同期ロードスレッドクラス More...
 

Public Member Functions

初期化
 GxSysResourceAsyncLoad (void)
 コンストラクタ
 
 ~GxSysResourceAsyncLoad (void) override
 デストラクタ
 
b32 initialize (u32 queueMax, u32 asyncLoadThreadStackSize=GX_ASYNC_LOAD_THREAD_STACKSIZE, u32 multiCount=1, s32 cpuIndex=GX_ASYNC_LOAD_THREAD_CPU_INDEX) override
 初期化
 
void terminate (void) override
 終了
 
操作
void update (void) override
 更新
 
void clear (void) override
 クリア
 
b32 isEmpty (void) override
 リクエストキューが空かどうか
 
b32 request (GxResBase *pResource) override
 リクエスト
 
void lockAsyncLoad (void) override
 非同期読み込みロック(読み込み中のファイルは終わるまでブロック)
 
void unlockAsyncLoad (void) override
 非同期読み込みロック解除(必ず lockAsyncLoad() と対に使用すること)
 
- Public Member Functions inherited from GxSysResourceAsyncLoadBase
 GxSysResourceAsyncLoadBase (void)
 コンストラクタ
 
 ~GxSysResourceAsyncLoadBase (void) override
 デストラクタ
 
void loadAsync (void *pObject)
 非同期読み込みジョブ
 
void setOnTerminateCallback (void(*pFunction)(u32))
 
virtual GX_FORCE_INLINE u32 getMultiCount (void) const
 非同期読み込み並列化の数
 
- Public Member Functions inherited from GxClassBase
constexpr GxClassBase (void)
 コンストラクタ
 
constexpr GxClassBase (const GxClassBase &base)
 コピーコンストラクタ
 
 ~GxClassBase (void) override
 デストラクタ
 
- Public Member Functions inherited from GxClassBaseRoot
constexpr GxClassBaseRoot (void)
 コンストラクタ
 
constexpr GxClassBaseRoot (const GxClassBaseRoot &)
 コピーコンストラクタ
 
virtual ~GxClassBaseRoot (void)
 デストラクタ
 
constexpr GxClassBaseRootoperator= (const GxClassBaseRoot &)
 代入演算子
 
virtual GxRttigetRtti (void) const =0
 Rttiの取得
 
virtual GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void)
 デフォルトオブジェクトを取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 

Protected Attributes

メンバ変数
GxLockFreeQueue< GxResBase *, GxAllocatorList::ALLOCATOR_TYPE::SYSTEM_requestQueue
 リクエストキュー
 
GxAsyncLoadThread _thread
 非同期ロードスレッド
 
b32 _isStopThread
 非同期ロードスレッド停止要求フラグ
 
- Protected Attributes inherited from GxSysResourceAsyncLoadBase
void(* _onTerminateProc )(u32)
 

Additional Inherited Members

- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 

Detailed Description

リソース非同期読み込み要求管理クラス

Member Function Documentation

◆ clear()

void GxSysResourceAsyncLoad::clear ( void )
overridevirtual

クリア

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize()

b32 GxSysResourceAsyncLoad::initialize ( u32 queueMax,
u32 asyncLoadThreadStackSize = GX_ASYNC_LOAD_THREAD_STACKSIZE,
u32 multiCount = 1,
s32 cpuIndex = GX_ASYNC_LOAD_THREAD_CPU_INDEX )
overridevirtual

初期化

Parameters
queueMax[in] リクエストキューサイズ
asyncLoadThreadStackSize[in] スタックサイズ
multiCount[in] 並列数
cpuIndex[in] CPUインデックス
threadName[in] スレッド名
Returns
成功ならtrue

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:

◆ isEmpty()

b32 GxSysResourceAsyncLoad::isEmpty ( void )
overridevirtual

リクエストキューが空かどうか

Returns
空ならtrue

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ lockAsyncLoad()

void GxSysResourceAsyncLoad::lockAsyncLoad ( void )
overridevirtual

非同期読み込みロック(読み込み中のファイルは終わるまでブロック)

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:

◆ request()

b32 GxSysResourceAsyncLoad::request ( GxResBase * pResource)
overridevirtual

リクエスト

Parameters
pResource[in] リクエストリソース
Returns
登録成功ならtrue

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ terminate()

void GxSysResourceAsyncLoad::terminate ( void )
overridevirtual

終了

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ unlockAsyncLoad()

void GxSysResourceAsyncLoad::unlockAsyncLoad ( void )
overridevirtual

非同期読み込みロック解除(必ず lockAsyncLoad() と対に使用すること)

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:

◆ update()

void GxSysResourceAsyncLoad::update ( void )
overridevirtual

更新

Reimplemented from GxSysResourceAsyncLoadBase.

Here is the call graph for this function:

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