構造体エディタ

概要

構造体定義 1 件のフィールドを定義します。バイト列の先頭から順にフィールドを並べ、定義が正しく機能するかプレビューで確認できます。構造体ライブラリの「追加」または「編集」から開きます。

構造体定義の編集ダイアログ

画面項目一覧

名前

項目 説明
名前 構造体定義の表示名。構造体ルールや判別条件から参照されるため、わかりやすい名前を付ける

判別条件

複数の構造体定義を登録している場合に、受信データ中の特定フィールドの値で「どの定義を適用するか」を自動判別するための設定です。

項目 説明
「判別フィールドで適用を分岐する」チェックボックス ON にすると判別条件が有効になる。OFF のときは判別フィールド名・一致値の欄がグレーアウト
判別フィールド名 判別に使うフィールドの名前。下のフィールド定義テーブルの「名前」列と一致させる
一致値(0x10 / 16) 判別フィールドがこの値のとき本定義を適用する。16 進(例: 0x10)・10 進(例: 16)どちらでも入力可

フィールド定義テーブル

バイト列の先頭から順にフィールドを並べます。各行が 1 フィールドです。

説明
名前 フィールドの識別名。条件・テンプレートから参照する際に使う
フィールドのデータ型。選択肢: U8 / U16 / U32 / U64(符号なし整数)、I8 / I16 / I32 / I64(符号あり整数)、F32 / F64(浮動小数点)、Ascii(ASCII 文字列)、Hex(生バイト列)、Bcd(パック BCD)、Array(配列)、Nested(ネスト構造体)
役割 フィールドの特別な役割。選択肢: None(なし)/ Length(後続データの長さを示す)/ Checksum(CRC/チェックサム)/ Discriminator(定義の判別に使う)
固定長 型が Hex / Ascii のときに使う固定バイト数(省略可)
長さ元 可変長フィールドのバイト数を参照する別フィールドの名前(省略可)
個数元 Array フィールドの要素数を参照する別フィールドの名前(省略可)

フィールドテーブルのボタン:

ボタン 説明
行追加 末尾に新しいフィールド行を追加する
行削除 選択中の行を削除する
選択中の行を 1 つ上へ移動する
選択中の行を 1 つ下へ移動する

プレビュー

定義が正しく機能するか確認できます。

項目 説明
HEX 入力欄 テストしたいバイト列を HEX で入力する(例: 00 10 00 05 48 65 6C 6C 6F
「パース」ボタン 入力した HEX を定義に当てはめてパース結果を表示する
結果表示欄 パース成否とフィールドごとの値・オフセット・バイト数を表示する

関連ページ