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

メモリアロケータリスト More...

#include <GxAllocator.h>

Classes

struct  GxCreateInformation
 アロケータ生成情報 More...
 

Static Public Member Functions

操作
static void attach (GxAllocatorList::ALLOCATOR_TYPE number, GxAllocator *pAllocator, u32 type=0)
 アロケータリストへの登録
 
static GxAllocatordetach (GxAllocatorList::ALLOCATOR_TYPE number)
 アロケータリストからの解除 (インデックス指定)
 
static void detach (const GxAllocator *pAllocator)
 アロケータリストからの解除 (アロケータ指定)
 
static u64 getAllAllocatorMemorySize (void)
 リスト内アロケータのメモリ総確保量を取得
 

定義

enum class  ALLOCATOR_TYPE : u32 {
  GLOBAL = 0 , UNIT , EFFECT , SOUND ,
  RESOURCE , SYSTEM , RENDER , PHYSICS ,
  TEMPORARY , SYSTEM_MAX , USER_START = SYSTEM_MAX , MAX = 16 ,
  INVALID = 0xFFFFFFFF
}
 アロケータ定義 More...
 
static constexpr u32 SIZE_REMAIN_ALL = U32_MAX
 アロケータ確保メモリ残容量全割り当て時指定サイズ定数
 

初期化

 GxAllocatorList (void)
 コンストラクタ
 
 ~GxAllocatorList (void)
 デストラクタ
 
static void initialize (const GxCreateInformation *pAllocatorInformation, u32 count)
 初期化
 
static void terminate (void)
 終了
 
static b32 createAllocatorList (const GxCreateInformation *pAllocatorInformation, u32 count)
 アロケータリスト生成
 
static void releaseAllocatorList (void)
 アロケータリスト破棄
 

アクセサ

constexpr GxAllocatorgetAllocator (void) const
 アロケータメンバ取得
 
constexpr u32 getType (void) const
 処理タイプメンバ取得
 
static GxAllocatorListgetAllocatorList (GxAllocatorList::ALLOCATOR_TYPE number)
 アロケータリスト取得 (インデックス指定)
 
static GxAllocatorListgetAllocatorList (const void *pAddress)
 アロケータリスト取得 (確保済みアドレス指定)
 
static void getAllAllocator (GxArrayClassBase &dst)
 全アロケータ取得
 
static GxAllocatorgetAllocator (GxAllocatorList::ALLOCATOR_TYPE number)
 アロケータ取得 (インデックス指定)
 
static GxAllocatorgetAllocator (const void *pAddress)
 アロケータ取得 (確保済みアドレス指定)
 
static u32 getType (GxAllocatorList::ALLOCATOR_TYPE number)
 アロケータ処理タイプ取得
 
static void setType (GxAllocatorList::ALLOCATOR_TYPE number, u32 type)
 アロケータ処理タイプ設定
 
static u32 getCount (void)
 アロケータリスト総数取得 (システム予約 + ユーザ追加)
 
static u32 getUserListCount (void)
 アロケータリストユーザ追加リスト数取得
 
static u64 getAvailableMemoryBeforeCreateAllocator (void)
 アロケータリスト生成前確保可能システムメモリ容量取得(CPU,VRAM確保前)
 
static u64 getAvailableMemoryAfterCreateAllocator (void)
 アロケータリスト生成後確保可能システムメモリ容量取得(VRAM確保前)
 
static u32 getHardwareReservedMemoryTotal (void)
 ハードウェア側消費用予約メモリ合計サイズ取得
 
static u32 getHardwareReservedMemoryUsed (void)
 ハードウェア側消費用予約メモリ消費サイズ取得
 
static u32 getHardwareReservedMemoryFree (void)
 ハードウェア側消費用予約メモリ空きサイズ取得
 

Detailed Description

メモリアロケータリスト

Member Enumeration Documentation

◆ ALLOCATOR_TYPE

enum class GxAllocatorList::ALLOCATOR_TYPE : u32
strong

アロケータ定義

Enumerator
GLOBAL 

グローバル

UNIT 

ユニット

EFFECT 

エフェクト

SOUND 

サウンド

RESOURCE 

リソース

SYSTEM 

システム

RENDER 

レンダリング

PHYSICS 

物理エンジン

TEMPORARY 

テンポラリ

SYSTEM_MAX 

システム定義アロケータ数

USER_START 

ユーザー定義アロケータ開始

MAX 

定義アロケータ数

INVALID 

未設定アロケータリスト番号

Member Function Documentation

◆ attach()

void GxAllocatorList::attach ( GxAllocatorList::ALLOCATOR_TYPE number,
GxAllocator * pAllocator,
u32 type = 0 )
static

アロケータリストへの登録

Parameters
number[in] 登録先アロケータリスト番号
pAllocator[in] 登録アロケータ
type[in] アロケータ処理タイプ
Here is the call graph for this function:
Here is the caller graph for this function:

◆ createAllocatorList()

b32 GxAllocatorList::createAllocatorList ( const GxCreateInformation * pAllocatorInformation,
u32 count )
static

アロケータリスト生成

Parameters
pAllocatorInformation[in] メモリ確保情報配列ポインタ
count[in] メモリ確保情報配列要素数 (アロケータ個数)
Returns
成功ならtrue
Here is the call graph for this function:
Here is the caller graph for this function:

◆ detach() [1/2]

void GxAllocatorList::detach ( const GxAllocator * pAllocator)
static

アロケータリストからの解除 (アロケータ指定)

Parameters
pAllocator[in] 解除アロケータ
Here is the call graph for this function:

◆ detach() [2/2]

GxAllocator * GxAllocatorList::detach ( GxAllocatorList::ALLOCATOR_TYPE number)
static

アロケータリストからの解除 (インデックス指定)

Parameters
number[in] 解除アロケータリスト番号
Returns
解除アロケータポインタ
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAllAllocator()

void GxAllocatorList::getAllAllocator ( GxArrayClassBase & dst)
static

全アロケータ取得

Parameters
dst[out] アロケータポインタ格納先Array
Note
アロケータリストに登録されているアロケータの内、共有されているもの
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAllAllocatorMemorySize()

u64 GxAllocatorList::getAllAllocatorMemorySize ( void )
static

リスト内アロケータのメモリ総確保量を取得

Returns
AllocatorList全体の確保メモリ総量
Here is the call graph for this function:

◆ getAllocatorList() [1/2]

GxAllocatorList * GxAllocatorList::getAllocatorList ( const void * pAddress)
static

アロケータリスト取得 (確保済みアドレス指定)

Parameters
pAddress[in] 確保済みアドレス
Returns
対象アロケータリストポインタ (未発見の場合:nullptr返却)
Here is the call graph for this function:

◆ getAllocatorList() [2/2]

GxAllocatorList * GxAllocatorList::getAllocatorList ( GxAllocatorList::ALLOCATOR_TYPE number)
static

アロケータリスト取得 (インデックス指定)

Parameters
number[in] 取得アロケータリストインデックス
Returns
対象アロケータリストポインタ
Here is the call graph for this function:
Here is the caller graph for this function:

◆ getHardwareReservedMemoryFree()

u32 GxAllocatorList::getHardwareReservedMemoryFree ( void )
static

ハードウェア側消費用予約メモリ空きサイズ取得

Returns
ハードウェア側消費用予約メモリ消費サイズ (byte)
Note
ハードウェア側消費用予約メモリ消費サイズ = アロケータリスト生成後メモリ残容量 - 消費容量
Here is the call graph for this function:

◆ getHardwareReservedMemoryTotal()

u32 GxAllocatorList::getHardwareReservedMemoryTotal ( void )
static

ハードウェア側消費用予約メモリ合計サイズ取得

Returns
ハードウェア側消費用予約メモリ合計サイズ (byte)
Note
ハードウェア側消費用予約メモリサイズ = アロケータリスト生成後メモリ残容量
Here is the caller graph for this function:

◆ getHardwareReservedMemoryUsed()

u32 GxAllocatorList::getHardwareReservedMemoryUsed ( void )
static

ハードウェア側消費用予約メモリ消費サイズ取得

Returns
ハードウェア側消費用予約メモリ消費サイズ (byte)
Note
ハードウェア側消費用予約メモリ消費サイズ = アロケータリスト生成後メモリ残容量 - 現残容量
Here is the call graph for this function:
Here is the caller graph for this function:

◆ initialize()

void GxAllocatorList::initialize ( const GxCreateInformation * pUserAllocatorInformation,
u32 count )
static

初期化

Parameters
pUserAllocatorInformation[in] ユーザー追加アロケータリスト
count[in] ユーザー追加アロケータ数
Here is the call graph for this function:
Here is the caller graph for this function:

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