「新規メッセージ定義ファイル」ウィザード、「C ヘッダー・ファイル」オプション、「ターゲット・メッセージ・セットを選択してください」の参照資料。
C ヘッダー・ファイル
「新規メッセージ定義ファイル」ウィザードのオプション「C ヘッダー・ファイル」を使用して、メッセージ定義を作成する場合、表示されるパネルのリストは以下のとおりです。
パネル・プロパティー
- ソース・プラットフォーム
- このプロパティーは、コード・ページ、浮動小数点形式、およびバイト・オーダーにデフォルトを設定します。
- (指定なし)
- Msvc
- icc
- AIXgcc
- AIXxlc
- OS390
- コード・ページ
- これは、「ソース・プラットフォーム」プロパティーを使用して設定されたもののデフォルトを表示します。
これを調整してはなりません。
- 浮動小数点形式
- これは、「ソース・プラットフォーム」プロパティーを使用して設定されたもののデフォルトを表示します。
これを調整してはなりません。
- IEEE Extended INTEL
- IEEE Extended AIX
- IEEE Extended OS/390
- IEEE Non-Extended
- IBM 390 Hexadecimal
ストレージ・レイアウト
- アドレス・サイズ
- C ヘッダーの設計対象となったハードウェアのネイティブ・アドレス・サイズを指定します。
これは以下のものに影響を与えます。
- インポートされたポインターの CWF の長さ (4|8 バイト)
- 'long' の CWF の長さ (4|8 バイト)
プログラムが生成または消費する CWF メッセージのサイズに一致するサイズを選択します。
- long double のサイズ
- これは、「ソース・プラットフォーム」プロパティーを使用して設定されたもののデフォルトを表示します。
これを調整してはなりません。
- バイト・オーダー
- Little Endian - デフォルト
- Big Endian
- パック・レベル
- これは、割り当てられたエレメントの CWF バイト位置合わせおよび、リーディング・スキップ・カウントとトレーリング・スキップ・カウントに影響を与えます。
C インポーターは本来、変数をそのサイズと同じ境界に位置合わせします (4 バイト整数を 4 バイト境界に位置合わせします)。
コンパイラーは、これを可能にするために、構造内の変数の間に遊びスペースを追加します。
「パック」設定は、変数の最大位置合わせ値を提供します。
メッセージに遊びスペースが含まれている場合、プログラムが生成または消費する CWF メッセージのサイズに一致するパック・レベルを選択してください。
遊びスペースが必要でない場合には、'1' を選択します。
以下に例を示します。
/* テスト・データ位置合わせ
* int を含む構造 (ワード境界で自然に位置合わせ)
*
* +---------------------------------------------------
* | a,b,c = 1 バイトのエレメント
* | _ = 1 バイトの埋め込み
* |---------------------------------------------------
* | 111 |
* | パック | 1234 5678 9012 | 合計構造サイズ
* | ----------+----------------+----------------------
* | 1 バイト | abbb bc | 6 バイト
* | 2 バイト | a_bb bbc_ | 8 バイト
* | 4 バイト | a___ bbbb c___ | 12 バイト
* | 8 バイト | a___ bbbb c___ | 12 バイト
* +---------------------------------------------------
*****************************************************/
struct _align01 {
char align_01_a;
int align_01_b;
char align_01_c;
};
- 列挙サイズ
- 列挙のサイズ (バイト単位)。
これは、CWF 長さカウントに直接関連します。
「圧縮」を設定すると、列挙に最大値が含まれる最小サイズが設定されます。
プログラムが生成または消費する CWF メッセージのサイズに一致するサイズを選択します。
- ストリングのエンコード
- ヌル終端。
「ヌル終端」が選択されると、サイズ n の C 文字配列が、maxLength ファセットを n-1 に設定した、タイプ xsd:string のエレメントとしてインポートされます。
メッセージ・セットに CWF 物理形式が定義されている場合、エレメントの CWF 物理タイプは「終了ストリングの NULL」です。
- 固定長。
「固定長」が選択されると (デフォルト)、サイズ n の C 文字配列が、maxLength ファセットを n に設定した、タイプ xsd:string のエレメントとしてインポートされます。メッセージ・セットに CWF 物理形式が定義されている場合、エレメントの CWF 物理タイプは、長さカウントを n に設定した固定長ストリングです。
このオプションは、現在 xsd:string としてインポートされている文字配列にのみ適用されます。
例えば、「unsigned char[2]」または「signed char[2]」は組み込まれません。このどちらも xsd:integer の制限としてインポートされます。
- ストリングの埋め込み文字
- C ヘッダー・ファイルをインポートするときに使用される埋め込み文字を入力します。
リストにある事前定義項目のいずれかから選択するか、またはフィールドに入力することによって指定します。
値は単一の文字に解決されなければなりません。
この文字は、以下のいずれかの方法によって指定できます。
- ドロップダウン・リストから NUL (デフォルト)、SPACE、または ‘0’を選択します。
- 引用符で囲われた英数字、たとえば "c" または 'c' (c は任意の英数字) を入力します。
- 16 進文字コードを、0xYY (YY は 16 進値) の形式で入力します。
- 10 進文字コードを、YY (YY は 10 進値) の形式で入力します。
- ユニコード値を U+xxxx (xxxx は 16 進数で指定されたユニコード値) の形式で指定します。
「ストリングのエンコード」オプションが「固定長」以外の場合には、このオプションはグレー表示されます。