コンフィギュレーション
[詳細]
#include <cri_le_file_system.h>
すべてのメンバ一覧
説明
コンフィギュレーション
- 説明:
- CRI File Systemライブラリの動作仕様を指定するための構造体です。
ライブラリ初期化時(::criFs_InitializeLibrary関数)に引数として本構造体を指定します。
- CRI File Systemライブラリは、初期化時に指定されたコンフィギュレーションに応じて、内部リソースを必要な数分だけ確保します。
そのため、コンフィギュレーションに指定する値を小さくすることで、ライブラリが必要とするメモリのサイズを小さく抑えることが可能です。
ただし、コンフィギュレーションに指定した数以上のハンドルを確保することはできなくなるため、値を小さくしすぎると、ハンドルの確保に失敗する可能性があります。
- 備考:
- デフォルト設定を使用する場合、 criFs_SetDefaultConfig 関数でデフォルトパラメータをセットし、 ::criFs_InitializeLibrary 関数に指定してください。
- 注意:
- 将来的にメンバが増える可能性に備え、設定前に::criFs_SetDefaultConfig 関数で初期化してから使用してください。
- 参照:
- criFs_InitializeLibrary, criFs_SetDefaultConfig
変数
使用するCriFsBinderの数
- 説明:
- アプリケーション中で使用するバインダ(CriFsBinder)の数を指定します。
アプリケーション中で ::criFsBinder_Create 関数を使用してバインダを作成する場合、 本パラメータに使用するバインダの数を指定する必要があります。
num_bindersには「同時に使用するバインダの最大数」を指定します。
例えば、 ::criFsBinder_Create 関数と ::criFsBinder_Destroy 関数を交互に続けて実行するケースにおいては、 最大同時には1つのバインダしか使用しないため、関数の呼び出し回数に関係なくnum_bindersに1を指定することが可能です。
逆に、ある場面でバインダを10個使用する場合には、その他の場面でバインダを全く使用しない場合であっても、 num_bindersに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するバインダの数分だけのメモリを初期化時に要求します。
そのため、num_bindersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 参照:
- criFsBinder_Create, criFsBinder_Destroy
使用するCriFsLoaderの数
- 説明:
- アプリケーション中で使用するローダ(CriFsLoader)の数を指定します。
アプリケーション中で ::criFsLoader_Create 関数を使用してローダを作成する場合、 本パラメータに使用するローダの数を指定する必要があります。
num_loadersには「同時に使用するローダの最大数」を指定します。
例えば、 ::criFsLoader_Create 関数と ::criFsLoader_Destroy 関数を交互に続けて実行するケースにおいては、 最大同時には1つのローダしか使用しないため、関数の呼び出し回数に関係なくnum_loadersに1を指定することが可能です。
逆に、ある場面でローダを10個使用する場合には、その他の場面でローダを全く使用しない場合であっても、 num_loadersに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するローダの数分だけのメモリを初期化時に要求します。
そのため、num_loadersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 参照:
- criFsLoader_Create, criFsLoader_Destroy
| CriSint32 num_group_loaders |
使用するCriFsGroupLoaderの数
- 説明:
- アプリケーション中で使用するグループローダ(CriFsGroupLoader)の数を指定します。
アプリケーション中で ::criFsGroupLoader_Create 関数を使用してグループローダを作成する場合、 本パラメータに使用するグループローダの数を指定する必要があります。
num_group_loadersには「同時に使用するグループローダの最大数」を指定します。
例えば、 ::criFsGoupLoader_Create 関数と ::criFsGroupLoader_Destroy 関数を交互に続けて実行するケースにおいては、 最大同時には1つのグループローダしか使用しないため、関数の呼び出し回数に関係なくnum_group_loadersに1を指定することが可能です。
逆に、ある場面でグループローダを10個使用する場合には、その他の場面でグループローダを全く使用しない場合であっても、 num_group_loadersに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するグループローダの数分だけのメモリを初期化時に要求します。
そのため、num_group_loadersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 参照:
- criFsGroupLoader_Create, criFsGroupLoader_Destroy
| CriSint32 num_stdio_handles |
使用するCriFsStdioの数
- 説明:
- アプリケーション中で使用するCriFsStdioハンドルの数を指定します。
アプリケーション中で ::criFsStdio_OpenFile 関数を使用してCriFsStdioハンドルを作成する場合、 本パラメータに使用するCriFsStdioハンドルの数を指定する必要があります。
num_stdio_handlesには「同時に使用するCriFsStdioハンドルの最大数」を指定します。
例えば、 ::criFsStdio_OpenFile 関数と ::criFsStdio_CloseFile 関数を交互に続けて実行するケースにおいては、 最大同時には1つのCriFsStdioハンドルしか使用しないため、関数の呼び出し回数に関係なくnum_stdio_handlesに1を指定することが可能です。
逆に、ある場面でCriFsStdioハンドルを10個使用する場合には、その他の場面でCriFsStdioハンドルを全く使用しない場合であっても、 num_stdio_handlesに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するCriFsStdioハンドルの数分だけのメモリを初期化時に要求します。
そのため、num_stdio_handlesに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 注意:
- ブリッジライブラリを使用してADXライブラリや救声主ライブラリを併用する場合、 ADXTハンドルやcriSsPlyハンドルは内部的にCriFsStdioハンドルを作成します。
そのため、ブリッジライブラリを使用する場合には、CRI File Systemライブラリ初期化時に num_stdio_handlesにADXTハンドルやcriSsPlyハンドルの数を加えた値を指定してください。
- 参照:
- criFsStdio_OpenFile, criFsStdio_CloseFile
使用するCriFsInstallerの数
- 説明:
- アプリケーション中で使用するインストーラ(CriFsInstaller)の数を指定します。
アプリケーション中で ::criFsInstaller_Create 関数を使用してインストーラを作成する場合、 本パラメータに使用するインストーラの数を指定する必要があります。
num_installersには「同時に使用するインストーラの最大数」を指定します。
例えば、 ::criFsInstaller_Create 関数と ::criFsInstaller_Destroy 関数を交互に続けて実行するケースにおいては、 最大同時には1つのインストーラしか使用しないため、関数の呼び出し回数に関係なくnum_installersに1を指定することが可能です。
逆に、ある場面でインストーラを10個使用する場合には、その他の場面でインストーラを全く使用しない場合であっても、 num_installersに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するインストーラの数分だけのメモリを初期化時に要求します。
そのため、num_installersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 注意:
- criFs_SetDefaultConfig マクロを使用してコンフィギュレーションを初期化する場合、num_installersの数は0に設定されます。
そのため、インストーラを使用する場合には、アプリケーション中でnum_installersを明示的に指定する必要があります。
- 参照:
- criFsInstaller_Create, criFsInstaller_Destroy
最大同時バインド数
- 説明:
- アプリケーション中でバインド処理を行い、保持するバインドID(CriFsBindId)の数を指定します。
アプリケーション中で ::criBinder_BindCpk 関数等を使用してバインド処理を行う場合、 本パラメータに使用するバインドIDの数を指定する必要があります。
max_bindsには「同時に使用するバインドIDの最大数」を指定します。
例えば、 ::criFsBinder_BindCpk 関数と ::criFsBinder_Unbind 関数を交互に続けて実行するケースにおいては、 最大同時には1つのバインドIDしか使用しないため、関数の呼び出し回数に関係なくmax_bindsに1を指定することが可能です。
逆に、ある場面でバインドIDを10個使用する場合には、その他の場面でバインドを一切行わない場合であっても、 max_bindsに10を指定する必要があります。
- 備考:
- CRI File Systemライブラリは、使用するバインドIDの数分だけのメモリを初期化時に要求します。
そのため、max_bindsに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
- 参照:
- criFsBinder_BindCpk, criFsBinder_BindFile, criFsBinder_BindFiles, criFsBinder_BindDirectory, criFsBinder_Unbind
最大同時オープンファイル数
\par 説明:
アプリケーション中でオープンするファイルの数を指定します。<br>
アプリケーション中で ::criFsStdio_OpenFile 関数等を使用してファイルをオープンする場合、
本パラメータにオープンするファイルの数を指定する必要があります。<br>
<br>
max_filesには「同時にオープンするファイルの最大数」を指定します。<br>
例えば、 ::criFsStdio_OpenFile 関数と ::criFsStdio_CloseFile 関数を交互に続けて実行するケースにおいては、
最大同時には1つのファイルしかオープンしないため、関数の呼び出し回数に関係なくmax_filesに1を指定することが可能です。<br>
逆に、ある場面でファイルを10個オープンする場合には、その他の場面でファイルを1つしかオープンしない場合であっても、
max_filesに10を指定する必要があります。<br>
\par 補足:
CRI File Systemライブラリは、以下の関数を実行した場合にファイルをオープンします。<br>
ファイルがオープンされる場面
| 関数 | 備考 |
| criFsBinder_BindCpk | オープンされるファイルの数は1つ。
criFsBinder_Unbind 関数が実行されるまでの間ファイルはオープンされ続ける。 |
| criFsBinder_BindFile | オープンされるファイルの数は1つ。
criFsBinder_Unbind 関数が実行されるまでの間ファイルはオープンされ続ける。 |
| criFsBinder_BindFiles | リストに含まれる数分ファイルがオープンされる。
criFsBinder_Unbind 関数が実行されるまでファイルはオープンされ続ける。 |
| criFsLoader_Load | オープンされるファイルの数は1つ。
ロードが完了するまでの間ファイルはオープンされ続ける。
バインダを指定した場合、ファイルはオープンされない(バインダが既にオープン済みのため)。 |
| criFsStdio_OpenFile | オープンされるファイルの数は1つ。
criFsStdio_CloseFile 関数が実行されるまでの間ファイルはオープンされ続ける。
バインダを指定した場合、ファイルはオープンされない(バインダが既にオープン済みのため)。 |
| criFsInstaller_Copy | オープンされるファイルの数は2つ。
ファイルコピーが完了するまでの間ファイルはオープンされ続ける。
バインダを指定した場合、オープンされるファイルは1つになる(1つをバインダが既にオープン済みのため)。 |
- 注意:
- ブリッジライブラリを使用してADXライブラリや救声主ライブラリを併用する場合、 ADXTハンドルやcriSsPlyハンドルは内部的にCriFsStdioハンドルを作成します。
そのため、ブリッジライブラリを使用する場合には、CRI File Systemライブラリ初期化時に max_filesにADXTハンドルやcriSsPlyハンドルの数を加えた値を指定してください。
パスの最大長(バイト単位)
- 説明:
- アプリケーション中で指定するファイルパスの最大長を指定します。
アプリケーション中で ::criFsLoader_Load 関数等を使用してファイルにアクセスする場合、 本パラメータにアプリケーションで使用するパス文字列の最大長を指定する必要があります。
max_pathには「使用するパス文字列の最大数」を指定します。
ある場面で256バイトのファイルパスを使用する場合、その他の場面で32バイトのファイルパスしか使わない場合でも、 max_pathには256を指定する必要があります。
- 備考:
- パスの最大長には、終端のNULL文字を含んだ数を指定する必要があります。
(「文字数+1バイト」の値を指定する必要があります。)
- 注意:
- PC等、ユーザがアプリケーションを自由な場所にインストール可能な場合には、想定される最大サイズを max_path に指定する必要がありますので、ご注意ください。
ライブラリバージョン番号
- 説明:
- CRI File Systemライブラリのバージョン番号です。
criFs_SetDefaultConfig 関数により、本ヘッダに定義されているバージョン番号が設定されます。
- 注意:
- アプリケーションでは、この値を変更しないでください。