このトピックで説明されているパネルによって、必要な物理プロパティーを選択できます。
C ヘッダー・ファイル
既存の C ヘッダー・ファイルから新規メッセージ定義ファイルを作成することを選択すると、以下のパネルが表示されます。
パネル・プロパティー
- ソース・プラットフォーム
- このプロパティーは、「コード・ページ」、
「浮動小数点形式」、および「バイト順」にデフォルトを設定します。
- (指定なし)
- Msvc
- icc
- AIXgcc
- AIXxlc
- OS390
- Codepage
- このプロパティーは、「ソース・プラットフォーム」プロパティーを使用して設定されたもののデフォルトを表示します。
この値は変更しないでください。
- 浮動小数点形式
- このプロパティーは、「ソース・プラットフォーム」プロパティーを使用して設定されたもののデフォルトを表示します。
この値は変更しないでください。
- IEEE Extended INTEL
- IEEE Extended AIX®
- IEEE Extended OS/390®
- IEEE Non-Extended
- IBM® 390
Hexadecimal
ストレージ・レイアウト
- アドレス・サイズ
- プログラムが生成または消費する CWF メッセージのサイズに一致するサイズを選択します。
C ヘッダーの設計対象となったハードウェアのネイティブ・アドレス・サイズを指定します。
このプロパティーは以下のものに影響を与えます。
- インポートされたポインターの CWF の長さ (32 ビットの場合は 4 バイト、64 ビットの場合は 8 バイト必要)
- long の CWF の長さ (32 ビットの場合は 4 バイト、64 ビットの場合は 8 バイト必要)
- 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 物理タイプはヌル終端ストリングです。
- 固定長。 「固定長」を選択すると (デフォルト)、サイズ n の C 文字配列が、maxLength ファセットを n に設定した、
タイプ xsd:string のエレメントとしてインポートされます。メッセージ・セットに CWF 物理形式が定義されている場合、エレメントの CWF 物理タイプは、長さカウントを n に設定した
固定長ストリングです。
「ストリング用の埋め込み文字」の値も選択する必要があります (詳細は下記参照)。
このオプションは、現在 xsd:string としてインポートされている文字配列にのみ適用されます。
例えば、「unsigned char[2]」または「signed char[2]」は組み込まれません。このどちらも xsd:integer の制限としてインポートされます。
- ストリングの埋め込み文字
- C ヘッダー・ファイルをインポートするときに使用される埋め込み文字を指定します。
リストにある事前定義項目のいずれかから選択するか、またはフィールドに文字を入力します。
値は単一の文字に解決されなければなりません。
この文字は、以下のいずれかの方法によって指定できます。
- ドロップダウン・リストから SPACE、NUL (デフォルト)、0x00、または 0xFF を選択します。
- 引用符で囲われた英数字、例えば "c" または 'c' (c は任意の英数字) を入力します。
- 16 進文字コードを、0xYY (YY は 16 進値) の形式で入力します。
- 10 進文字コードを、YY (YY は 10 進値) の形式で入力します。
- ユニコード値を U+xxxx (xxxx は 16 進数で指定されたユニコード値) の形式で指定します。
このオプションは「ストリングのエンコード」
が「固定長」に設定されている場合のみ使用可能です。