ObjectInfoデータセット
アセンブラの魔女 ⧫ PTP ⧫ データ型 ⧫ ObjectInfoデータセット
アセンブラの魔女 ⧫ PTP ⧫ データ型 ⧫ ObjectInfoデータセット

 ObjectInfoデータセットは、特定のオブジェクト(画像オブジェクト, 非画像オブジェクト, アソシエーション)に関する情報をまとめたデータセットです。このデータセットには、いくつか画像に関するフィールドがありますが、非画像オブジェクトではこれらのフィールドにはゼロをセットする必要があります。

フィールド順フィールドサイズ
[bytes]
データ型用途
1StorageID4StorageID共通
2ObjectFormat2オブジェクトフォーマットコード(ObjectFormatCode)共通
3ProtectionStatus2UINT16共通
4ObjectCompressedSize4UINT32共通
5ThumbFormat4オブジェクトフォーマットコード(ObjectFormatCode)画像オブジェクト用
6ThumbCompressedSize4UINT32画像オブジェクト用
7ThumbPixWidth4UINT32画像オブジェクト用
8ThumbPixHeight4UINT32画像オブジェクト用
9ImagePixWidth4UINT32画像オブジェクト用
10ImagePixHeight4UINT32画像オブジェクト用
11ImageBitDepth4UINT32画像オブジェクト用
12ParentObject4オブジェクトハンドル(ObjectHandle)画像オブジェクト用
13AssociationType2アソシエーションコード(AssociationCode)アソシエーション用
14AssociationDesc4アソシエーションのパラメータ(AssociationDesc)アソシエーション用
15SequenceNumber4シーケンス番号(SequenceNumber)共通
16Filename可変長文字列共通
17CaptureDate可変長日付文字列(DateTime String)共通
18ModificationDate可変長日付文字列(DateTime String)共通
19Keywords可変長文字列共通

 このオブジェクトの存在するストレージのStorgeID。

 このオブジェクトのオブジェクトフォーマットコード(ObjectFormatCode)。

 オブジェクトのread-write属性を示すフィールドです。このオブジェクトは、このフィールドが非プロテクト状態(No Protection)を示し、このオブジェクトの存在するストレージのStorageInfoデータセットのAccessCapabilityフィールドがリードライト可(0x0000)の時に削除することができます。このフィールドは、SetObjectProtectionオペレーションの結果が反映されます。このフィールドをサポートしない場合は0x0000をセットし、SetObjectProtectionオペレーションをサポートすることは出来ません。

ProtectionStatus値

値意味
0x0000非プロテクト状態(No Protection)
0x0001プロテクト状態(Read-Only)
その他の値Reserved

 このオブジェクト全体を格納するために必要なバッファのサイズ(バイト)。

 このオブジェクトに含まれるサムネイルのオブジェクトフォーマットをオブジェクトフォーマットコード(ObjectFormatCode)で示します。画像オブジェクトでは必ずサムネイルをサポートしなければなりません。画像以外のオブジェクトの場合、このフィールドに0x0000をセットします。

 このオブジェクトに含まれるサムネイルを格納するために必要なバッファのサイズ(バイト)。画像以外のオブジェクトの場合、このフィールドにゼロをセットします。

 このオブジェクトに含まれるサムネイルの幅(画素数)。このフィールドをサポートしない場合や画像以外のオブジェクトでは、このフィールドにゼロをセットします。

 このオブジェクトに含まれるサムネイルの高さ(画素数)。このフィールドをサポートしない場合や画像以外のオブジェクトでは、このフィールドにゼロをセットします。

 このオブジェクトに含まれる主画像の幅(画素数)。①主画像の幅が不明な場合、②このフィールドをサポートしない場合、③画像以外のオブジェクトでは、このフィールドにゼロをセットします。

 このオブジェクトに含まれる主画像の高さ(画素数)。①主画像の高さが不明な場合、②このフィールドをサポートしない場合、③画像以外のオブジェクトでは、このフィールドにゼロをセットします。

 このオブジェクトに含まれる非圧縮画像の画素ごとのビット数(bits/pixel)。①画素ごとのビット数が不明な場合、②このフィールドをサポートしない場合、③画像以外のオブジェクトでは、このフィールドにゼロをセットします。

 このオブジェクトの親オブジェクトのオブジェクトハンドル(ObjectHandle)。アソシエーション型のオブジェクトのみが親オブジェクトとなることができます。①デバイスがアソシエーションをサポートしない場合、②オブジェクトが階層のルートにある場合は、③このフィールドをサポートしない場合、このフィールドにゼロをセットします。

 このオブジェクトのアソシエーションタイプをアソシエーションコード(AssociationCode)で示します。オブジェクトがアソシエーションでない場合、ゼロをセットします。

 一部のアソシエーションのタイプでは、AssociationDescフィールドにはアソシエーションに関するパラメータをセットします。例えばTimeSequenceタイプのアソシエーションでは、AssociationDescに画像の表示間隔がミリ秒でセットされます。このフィールドを必要としないアソシエーションや、画像オブジェクトの場合はゼロをセットします。

 SequenceNumberフィールドは、オブジェクトが順番付けされたアソシエーションのメンバーである場合シーケンス番号をセットするために用いられ、それ以外の場合はゼロをセットします。SequenceNumberフィールド値は基本的に連続増加する値として生成されます。途中のシーケンスが削除された場合には、連続性が失われますが連続性を維持するために番号を付けなおす必要はありません。

 Filenameフィールドは、このオブジェクトのファイル名をセットします。この値にはパスは含まれず、ディレクトリ名やファイル自身の名前のみが含まれます。この値の解釈は、StorageInfoデータセットのFilesystemTypeフィールドの値に依存します(*1)。このフィールドをサポートしない場合は、空の文字列をセットします。

 (*1)仕様書では「StorageInfoデータセットのFilenameFormatフィールド」とありますが、StorageInfoデータセットにはFilenameFormatフィールドは存在せず、おそらく正しくはFilesystemTypeフィールドと思われます。

 このオブジェクトの撮影日時。このフィールドをサポートしない場合は、空の文字列をセットします。

 このオブジェクトが最後に修正された日時。このフィールドをサポートしない場合は、空の文字列をセットします。

 このオブジェクトの画像に関連付けられたキーワード。それぞれのキーワードはスペースで区切ります。複数のワードからなるキーワードは、それぞれのワードをアンダースコア"_"でつなぎます。このフィールドをサポートしない場合は、空の文字列をセットします。

▼ Property
記事情報
datePublished2011-01-01
dateModified2018-07-26
authorアセンブラの魔女
headlinePTPのObjectInfoデータセットについての説明記事です
keywordsPTP
keywordsObjectInfoデータセット
publisher name= wiredFish, logo.name= wiredFish, logo.url= https://books-nekoya.jp/Programming/chigu-hagu-title-01.png size= 208 pixel x 50 pixel
image.url url= https://books-nekoya.jp/Programming/chigu-hagu-title-01.png , size= 208 pixel x 50 pixel