StorageInfoデータセットは、ストレージデバイスの情報を扱うために用いられます。イニシエーターはGetStorageInfoオペレーションを使ってデバイスからStorageInfoデータセットを取得することができます。
フィールド順 | フィールド | サイズ [bytes] | データ型 |
---|---|---|---|
1 | StorageType | 2 | UINT16 |
2 | FilesystemType | 2 | UINT16 |
3 | AccessCapability | 2 | UINT16 |
4 | MaxCapacity | 8 | UINT64 |
5 | FreeSpaceInBytes | 8 | UINT64 |
6 | FreeSpaceInImages | 4 | UINT32 |
7 | StorageDescription | 可変長 | 文字列 |
8 | VolumeLabel | 可変長 | 文字列 |
StorageTypeフィールドは、以下のコードを使って内臓/リムーバブル、RAM/ROMなどのストレージタイプを示します。
値 | 意味 |
---|---|
0x0000 | Undefined |
0x0001 | 内臓型ストレージ(リードオンリ)(Fixed ROM) |
0x0002 | リムーバブル型ストレージ(リードオンリ)(Removable ROM) |
0x0003 | 内臓型ストレージ(リード/ライト可能)(Fixed RAM) |
0x0004 | リムーバブル型ストレージ(リード/ライト可能)(Removable RAM) |
その他のコード | Reserved |
FilesystemTypeフィールドは、デバイスのファイルシステムのタイプを示します。このフィールドのサポートは任意です。
bit15 | bit14-0 | 意味 |
---|---|---|
0 | 0 | Undefined |
1 | 階層構造を持たないファイルシステム(Generic Flat) | |
2 | 階層構造を持つファイルシステム(Generic Hierarchical) | |
3 | DCF(*1)に準拠したファイルシステム | |
その他のコード | Reserved | |
1 | ベンダー定義のコード |
(*1)カメラファイルシステム規格(Design rule for Camera File system)。
デジタルカメラの場合、ほとんどの製品がDCFに準拠していますので、FilesystemTypeには3がセットされているはずです。
AccessCapabilityフィールドは、ストアのリード/ライト属性を示します。
値 | 意味 |
---|---|
0x0000 | リード/ライト可 |
0x0001 | リードオンリ(オブジェクトの削除:不可) |
0x0002 | リードオンリ(オブジェクトの削除:可) |
MaxCapacityフィールドは、ストアの総容量をバイト数で示します。このフィールドのサポートは任意ですが、サポートしない場合には0xFFFFFFFFFFFFFFFFをセットしておく必要があります(*2)。
(*2)PIMA 15740:2000 FIRST EDITIONでは「MaxCapacityを使用しない場合は0xFFFFFFFFをセットする」とありますが、このフィールドはUINT64であるため、おそらく正しくは0xFFFFFFFFFFFFFFFFと思われます。
値 | 意味 |
---|---|
0x0000 | リード/ライト可 |
0x0001 | リードオンリ(オブジェクトの削除:不可) |
0x0002 | リードオンリ(オブジェクトの削除:可) |
FreeSpaceInBytesフィールドは、ストアの残り容量をバイト数で示します。このフィールドサポートしない場合は、固定値0xFFFFFFFFをセットします。
FreeSpaceInImagesフィールドは、現在のカメラ設定で撮影を行った場合の撮影可能枚数を示します。ストアの残り容量をバイト数で示します。このフィールドサポートしない場合は、固定値0xFFFFFFFFをセットします。
StorageDescriptionフィールドには、ストレージを説明する文字列をセットします(例:"SD Card")。このフィールドをサポートしない場合は、空の文字列をセットします。
VolumeLabelフィールドには、ストレージのボリュームラベルをセットします。このフィールドをサポートしない場合は、空の文字列をセットします。