# ReadUserDataBuffer

この関数は、現在有効になっているファクトリ通信プロトコルの [ユーザデータ] フィールドに含まれるデータを読み取る場合に使用します。参照先の Buffer データ構造体は、FormatInputBuffer 関数によって作成され、受信したデータの解釈方法を定義します。

## ReadUserDataBuffer の入力

パラメータ | 説明
イベント | データを読み取る更新イベントを指定します。 このパラメータは、例えば、次のいずれかのタイムスタンプが含まれているイベントの参照である必要があります。 イベント 関数を含むセル。 Button 関数を含むセル。
バッファ | FormatInputBuffer 関数によって作成された Buffer データ構造体への参照を指定します。この構造体は受信したデータの解釈方法を定義します。
プロトコル | ユーザデータの読み取り元となるプロトコルを指定します。
1 = EtherNet/IP | EtherNet/IP が有効なファクトリ通信プロトコルであることを指定します。
2 = PROFINET | PROFINET が有効なファクトリ通信プロトコルであることを指定します。
100 = デフォルト | 現在有効なファクトリ通信プロトコルが使用されることを指定します。複数のプロトコルが有効な場合、最初の有効なプロトコルが使用されます。
接続の検証 | この関数で接続の検証を行うかどうかを指定します。有効にした場合、選択したプロトコルでアクティブな周期接続が行われていないと、この関数は #ERR を返します。
バイト/ワードオーダ | 関数によって読み取られるワードおよびバイトのビットオーダを指定します。
0 = ビッグエンディアン | 最上位バイトが最初に格納され、後続バイトが降順に格納されるように指定します。
1 = リトルエンディアン | 最下位バイトが最初に格納され、後続バイトが昇順に格納されるように指定します。
2 = ビッグエンディアン (16 ビットワード変換使用) | ビッグエンディアンのバイトスタイルが適用され、倍精度ワード型のワードペアオーダが切り替わります(16 ビットワード)。
3 = リトルエンディアン (16 ビットワード変換使用) | リトルエンディアンのバイトスタイルが適用され、倍精度ワード型のワードペアオーダが切り替わります(16 ビットワード)。
100 = デフォルト | デフォルトの設定が使用されます。

## ReadUserDataBuffer の出力

戻り値 | クライアントによって送信されたデータを含んでいる UserData データ構造体。次の場合は #ERR を返します。 入力パラメータが無効な場合 クライアントからの接続が確立されていない場合 接続を確立してからデータバッファに書き込みが行われていない場合
結果 | UserData データ構造体のデータには、GetBufferData 関数を使用してアクセスします。詳細については、「入出力関数」のトピックを参照してください。