フレームを表示

LEADFILETAG

フレームを表示

typedef struct _LEADFILETAG
{
   L_UINT16 uTag;
   L_UINT16 uType;
   L_UINT uCount;
   L_UINT uDataSize;
   L_SIZE_T uDataOffset;
}LEADFILETAG, *pLEADFILETAG;

LEADFILETAG構造体は、ファイルタグまたはジオキーに関する情報を格納します。この構造体の配列へのポインターはL_ReadFileTagsによって得られます、そして、L_ReadFileGeoKeysは機能します。

メンバ

説明

uTag

L_ReadFileTags関数で使われるとき、このタグのID。書留のタグの例は、以下の通りです:

 

意味

 

0 x 8298

著作権コメント

 

0 x 8769

一般的なExifコメント。

 

0 x 8825

Exif GPSコメント

 

L_ReadFileGeoKeys関数で使われるとき、このジオキーのID。GeoKey IDの値は、0と65535の間で変動します。可能性がある範囲は以下の通りです:

 

範囲

意味

 

0..1023

GeoTIFF構成キー

 

1024..2047

使用をしません;今後使うため確保されます

 

2048..3071

Geographic/Geocentric CSパラメーターキー

 

3072..4095

計画されたCSパラメーターキー

 

4096..5119

垂直方向のCSパラメーターキー

 

5120..32767

確保されます

 

32768..65535

独自の保存する民用データ

uType

L_ReadFileTagsで使われるとき、タグを付けられたデータ型。有効値は以下の通りです:

 

意味

 

TAG_BYTE

[1] Byte。

 

TAG_ASCII

[2] 0~255の範囲のByte。

 

TAG_SBYTE

[6] Byteは、+127に-128の範囲で、同じくらい符合付き数を使いました。

 

TAG_UNDEFINED

[7] Byte(アプリケーション定義の使用による)。

 

TAG_SHORT

[3] 2バイト、符号なし。

 

TAG_SSHORT

[8] 2バイト、符号付き。

 

TAG_LONG

[4] 4バイト、符号なし。

 

TAG_SLONG

[9] 4バイト、符号付き。

 

TAG_RATIONAL

[5] 8バイト、一対の符号なし4バイト整数(最初の数は分子で、そして、第2は分数の分母である)として使われます。

 

TAG_SRATIONAL

[10] 8バイト、一対の符合付き倍長整数(最初の数は分子で、そして、第2は分数の分母である)として使われます。

 

TAG_FLOAT

[11] 浮動小数点数として使われる4バイト。

 

TAG_DOUBLE

[12] 倍精度浮動小数点数として使われる8バイト。

 

L_ReadFileGeoKeysで使われるとき、設定するGeoKeyの型。これは、ppDataによってポイントされるデータがSHORTか、DOUBLEかASCIIであるかどうか示します。設定可能な値は、以下の通りです。

 

意味

 

TAG_ASCII

[2] pDataによってポイントされるデータは、ASCIIバイトの配列です。

 

TAG_SHORT

[3] pDataによってポイントされるデータは、SHORT値(それぞれ2バイト)の配列です。

 

TAG_DOUBLE

[12] pDataによってポイントされるデータは、DOUBLE形式(それぞれ8バイト)の浮動小数点の配列です。

uCount

データ項目(タグを付けられたデータ型に基づく)の数えます。たとえば、バッファサイズが16である、そして、データ型がTAG_DOUBLEであるならば、カウントは2です。

uDataSize

データ項目のバイト数。

uDataOffset

Byteは、この項目のためのデータが開始するppData変数にオフセットしました。この項目のためにデータを読むために、pItemData =(ppData + uDataOffset)を使うことができます

コメント

pLEADFILETAGは、LEADFILETAG構造体へのポインターです。関数パラメーターの型がpLEADFILETAGである所で、LEADFILETAG変数を宣言することができて、構造体の分野を更新することができて、パラメーターで変数のアドレスを渡すことができます。プログラムがポインターを必要とする場合だけ、pLEADFILETAGを可変であると宣言することが必要です。

すべてのタグを読むために、L_ReadFileTagsまたはL_ReadFileGeoKeyspLEADFILETAGにアドレスを渡します、さもなければ、ジオキーは画像ファイルの中で保存しました。これらの関数はpLEADFILETAG構造体の配列でこのポインターを割り当てます。そして、各項目のための1つが見つけられます。pLEADFILETAGポインターを用いてされるとき、割り当てられたメモリを開放するためにL_FreeFileTagsにそれを渡さなければなりません。