Struct CriFs.Config
コンフィギュレーション
Inherited Members
Namespace: CriWare
Assembly: CriWare.CriFs.dll
Syntax
[Serializable]
public struct CriFs.Config
Remarks
説明: CRI File Systemライブラリの動作仕様を指定するための構造体です。 ライブラリ初期化時( InitializeLibrary(in Config, IntPtr, int) 関数)に引数として本構造体を指定します。
CRI File Systemライブラリは、初期化時に指定されたコンフィギュレーションに応じて、内部リソースを必要な数分だけ確保します。 そのため、コンフィギュレーションに指定する値を小さくすることで、ライブラリが必要とするメモリのサイズを小さく抑えることが可能です。 ただし、コンフィギュレーションに指定した数以上のオブジェクトを確保することはできなくなるため、値を小さくしすぎると、オブジェクトの確保に失敗する可能性があります。
備考: デフォルト設定を使用する場合、 SetDefaultConfig(out Config) 関数でデフォルトパラメータをセットし、 InitializeLibrary(in Config, IntPtr, int) 関数に指定してください。
注意: 将来的にメンバーが増える可能性に備え、設定前にSetDefaultConfig(out Config) 関数で初期化してから使用してください。
Fields
enableCrcCheck
CPKファイルのCRCチェックを行うかどうか
Declaration
public NativeBool enableCrcCheck
Field Value
Type | Description |
---|---|
NativeBool |
Remarks
説明: CPKファイル内のCRC情報を使用し、データ整合性チェックを行うかをどうかを切り替えるフラグです。 本フラグを true に設定すると、以下のタイミングでCRCチェックを行います。 - CPKバインド時にTOC情報のCRCチェック - コンテンツファイルロード時にコンテンツファイル単位のCRCチェック CPKに付加されたCRC情報と、実際に読みこんだデータのCRCが一致しない場合、エラーとなります。
maxBinds
最大同時バインド数
Declaration
public int maxBinds
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中でバインド処理を行い、保持するバインドID(CriFsBind)の数を指定します。 アプリケーション中で BindCpk(CriFsBinder, ArgString, out CriFsBind, IntPtr, int) 関数等を使用してバインド処理を行う場合、 本パラメータに使用するバインドIDの数を指定する必要があります。 max_bindsには「同時に使用するバインドIDの最大数」を指定します。 例えば、 BindCpk(CriFsBinder, ArgString, out CriFsBind, IntPtr, int) 関数と Unbind(CriFsBind) 関数を交互に続けて実行するケースにおいては、 最大同時には1つのバインドIDしか使用しないため、関数の呼び出し回数に関係なくmax_bindsに1を指定することが可能です。 逆に、ある場面でバインドIDを10個使用する場合には、その他の場面でバインドを一切行わない場合であっても、 max_bindsに10を指定する必要があります。
備考: CRI File Systemライブラリは、使用するバインドIDの数分だけのメモリを初期化時に要求します。 そのため、max_bindsに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
See Also
maxFiles
最大同時オープンファイル数
Declaration
public int maxFiles
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中でオープンするファイルの数を指定します。 アプリケーション中で OpenFile(CriFsBinder, IntPtr, IntPtr) 関数等を使用してファイルをオープンする場合、 本パラメータにオープンするファイルの数を指定する必要があります。 max_filesには「同時にオープンするファイルの最大数」を指定します。 例えば、 OpenFile(CriFsBinder, IntPtr, IntPtr) 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には1つのファイルしかオープンしないため、関数の呼び出し回数に関係なくmax_filesに1を指定することが可能です。 逆に、ある場面でファイルを10個オープンする場合には、その他の場面でファイルを1つしかオープンしない場合であっても、 max_filesに10を指定する必要があります。
補足: CRI File Systemライブラリは、以下の関数を実行した場合にファイルをオープンします。 ## ファイルがオープンされる場面 |関数 |備考 | | --- | --- | |BindCpk(CriFsBinder, ArgString, out CriFsBind, IntPtr, int) |オープンされるファイルの数は1つ。 Unbind(CriFsBind) 関数が実行されるまでの間ファイルはオープンされ続ける。 | |BindFile(CriFsBinder, ArgString, out CriFsBind, IntPtr, int) |オープンされるファイルの数は1つ。 Unbind(CriFsBind) 関数が実行されるまでの間ファイルはオープンされ続ける。 | |BindFiles(CriFsBinder, ArgString, out CriFsBind, IntPtr, int) |リストに含まれる数分ファイルがオープンされる。 Unbind(CriFsBind) 関数が実行されるまでファイルはオープンされ続ける。 | |Load(CriFsBinder, ArgString, long, long, IntPtr, long) |オープンされるファイルの数は1つ。 ロードが完了するまでの間ファイルはオープンされ続ける。 バインダーを指定した場合、ファイルはオープンされない(バインダーが既にオープン済みのため)。 | |OpenFile(CriFsBinder, IntPtr, IntPtr) |オープンされるファイルの数は1つ。 Dispose() 関数が実行されるまでの間ファイルはオープンされ続ける。 バインダーを指定した場合、ファイルはオープンされない(バインダーが既にオープン済みのため)。 | |criFsInstaller_Copy |オープンされるファイルの数は2つ。 ファイルコピーが完了するまでの間ファイルはオープンされ続ける。 バインダーを指定した場合、オープンされるファイルは1つになる(1つをバインダーが既にオープン済みのため)。 |
注意: ブリッジライブラリを使用してADXライブラリや救声主ライブラリを併用する場合、 ADXTオブジェクトやcriSsPlyオブジェクトは内部的にCriFsStdioオブジェクトを作成します。 そのため、ブリッジライブラリを使用する場合には、CRI File Systemライブラリ初期化時に max_filesにADXTオブジェクトやcriSsPlyオブジェクトの数を加えた値を指定してください。
maxPath
パスの最大長(バイト単位)
Declaration
public int maxPath
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で指定するファイルパスの最大長を指定します。 アプリケーション中で Load(CriFsBinder, ArgString, long, long, IntPtr, long) 関数等を使用してファイルにアクセスする場合、 本パラメータにアプリケーションで使用するパス文字列の最大長を指定する必要があります。 max_pathには「使用するパス文字列の最大数」を指定します。 ある場面で256バイトのファイルパスを使用する場合、その他の場面で32バイトのファイルパスしか使わない場合でも、 max_pathには256を指定する必要があります。
備考: パスの最大長には、終端のnull文字を含んだ数を指定する必要があります。 (「文字数+1バイト」の値を指定する必要があります。)
注意: PC等、ユーザーがアプリケーションを自由な場所にインストール可能な場合には、想定される最大サイズを max_path に指定する必要がありますので、ご注意ください。
numBinders
使用するCriFsBinderの数
Declaration
public int numBinders
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するバインダー(CriFsBinder)の数を指定します。 アプリケーション中で CriFsBinder() 関数を使用してバインダーを作成する場合、 本パラメータに使用するバインダーの数を指定する必要があります。 num_bindersには「同時に使用するバインダーの最大数」を指定します。 例えば、 CriFsBinder() 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には1つのバインダーしか使用しないため、関数の呼び出し回数に関係なくnum_bindersに1を指定することが可能です。 逆に、ある場面でバインダーを10個使用する場合には、その他の場面でバインダーを全く使用しない場合であっても、 num_bindersに10を指定する必要があります。
備考: CRI File Systemライブラリは、使用するバインダーの数分だけのメモリを初期化時に要求します。 そのため、num_bindersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
See Also
numGroupLoaders
使用するCriFsGroupLoaderの数
Declaration
public int numGroupLoaders
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するグループローダー(CriFsGroupLoader)の数を指定します。 アプリケーション中で CriFsGroupLoader(CriFsBind, ArgString, ArgString) 関数を使用してグループローダーを作成する場合、 本パラメータに使用するグループローダーの数を指定する必要があります。 num_group_loadersには「同時に使用するグループローダーの最大数」を指定します。 例えば、 CriFsGroupLoader(CriFsBind, ArgString, ArgString) 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には1つのグループローダーしか使用しないため、関数の呼び出し回数に関係なくnum_group_loadersに1を指定することが可能です。 逆に、ある場面でグループローダーを10個使用する場合には、その他の場面でグループローダーを全く使用しない場合であっても、 num_group_loadersに10を指定する必要があります。
備考: CRI File Systemライブラリは、使用するグループローダーの数分だけのメモリを初期化時に要求します。 そのため、num_group_loadersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
See Also
numInstallers
使用するCriFsInstallerの数
Declaration
public int numInstallers
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するインストーラー(CriFsInstaller)の数を指定します。 アプリケーション中で criFsInstaller_Create 関数を使用してインストーラーを作成する場合、 本パラメータに使用するインストーラーの数を指定する必要があります。 num_installersには「同時に使用するインストーラーの最大数」を指定します。 例えば、 criFsInstaller_Create 関数と criFsInstaller_Destroy 関数を交互に続けて実行するケースにおいては、 最大同時には1つのインストーラーしか使用しないため、関数の呼び出し回数に関係なくnum_installersに1を指定することが可能です。 逆に、ある場面でインストーラーを10個使用する場合には、その他の場面でインストーラーを全く使用しない場合であっても、 num_installersに10を指定する必要があります。
備考: CRI File Systemライブラリは、使用するインストーラーの数分だけのメモリを初期化時に要求します。 そのため、num_installersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
注意: SetDefaultConfig(out Config) メソッドを使用してコンフィギュレーションを初期化する場合、num_installersの数は0に設定されます。 そのため、インストーラーを使用する場合には、アプリケーション中でnum_installersを明示的に指定する必要があります。
numLoaders
使用するCriFsLoaderの数
Declaration
public int numLoaders
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するローダー(CriFsLoader)の数を指定します。 アプリケーション中で CriFsLoader(IntPtr) 関数を使用してローダーを作成する場合、 本パラメータに使用するローダーの数を指定する必要があります。 num_loadersには「同時に使用するローダーの最大数」を指定します。 例えば、 CriFsLoader(IntPtr) 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には1つのローダーしか使用しないため、関数の呼び出し回数に関係なくnum_loadersに1を指定することが可能です。 逆に、ある場面でローダーを10個使用する場合には、その他の場面でローダーを全く使用しない場合であっても、 num_loadersに10を指定する必要があります。
備考: CRI File Systemライブラリは、使用するローダーの数分だけのメモリを初期化時に要求します。 そのため、num_loadersに必要最小限の値をセットすることで、ライブラリが必要とするメモリのサイズを抑えることが可能です。
See Also
numStdioHandles
使用するCriFsStdioの数
Declaration
public int numStdioHandles
Field Value
Type | Description |
---|---|
int |
Remarks
説明: アプリケーション中で使用するCriFsStdioオブジェクトの数を指定します。 アプリケーション中で OpenFile(CriFsBinder, IntPtr, IntPtr) 関数を使用してCriFsStdioオブジェクトを作成する場合、 本パラメータに使用するCriFsStdioオブジェクトの数を指定する必要があります。 num_stdio_handlesには「同時に使用するCriFsStdioオブジェクトの最大数」を指定します。 例えば、 OpenFile(CriFsBinder, IntPtr, IntPtr) 関数と Dispose() 関数を交互に続けて実行するケースにおいては、 最大同時には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オブジェクトの数を加えた値を指定してください。
See Also
threadModel
スレッドモデル
Declaration
public CriFs.ThreadModel threadModel
Field Value
Type | Description |
---|---|
CriFs.ThreadModel |
Remarks
説明: CRI File Systemのスレッドモデルを指定します。
See Also
version
ライブラリバージョン番号
Declaration
public uint version
Field Value
Type | Description |
---|---|
uint |
Remarks
説明: CRI File Systemライブラリのバージョン番号です。 SetDefaultConfig(out Config) 関数により、本ヘッダーに定義されているバージョン番号が設定されます。
注意: アプリケーションでは、この値を変更しないでください。
versionString
ライブラリバージョン文字列
Declaration
public NativeString versionString
Field Value
Type | Description |
---|---|
NativeString |
Remarks
説明: CRI File Systemライブラリのバージョン文字列です。 SetDefaultConfig(out Config) 関数により、本ヘッダーに定義されているバージョン文字列が設定されます。
注意: アプリケーションでは、この値を変更しないでください。