パケット処理用のグラフ オブジェクト - 2023.2 日本語

AI エンジン カーネルおよびグラフ プログラミング ガイド (UG1079)

Document ID
UG1079
Release Date
2023-12-04
Version
2023.2 日本語

次に示す adf 名前空間にあらかじめ定義されたオブジェクト クラスは、パケット ストリームの接続を定義するために使用されます。

template <int nway> class pktsplit { ... }
template <int nway> class pktmerge { ... }

スコープ

タイプ pktsplit<n> および pktmerge<n> のオブジェクトは、ユーザー定義のグラフ タイプ (つまり、graph から継承するクラス内) のメンバー変数として宣言できます。テンプレート パラメーター n は、分割またはマージの程度を示したコンパイル時定数 (正の整数) です。これらのオブジェクトは、入力接続と出力接続を備えたグラフの通常ノードのように動作しますが、明確なパケット配線にのみ使用されます。

メンバー関数

static pktsplit<nway> & create();
static pktmerge<nway> & create();

これらのクラスのスタティック メソッド create は、kernel create メソッドと同じように機能します。分割またはマージの程度は、テンプレート変数宣言で既に指定されています。

メンバー変数

std::vector<port<input>> in;

この変数で、ノードの論理入力を指定します。pktsplit ノードの入力は 1 つです。pktmerge ノードの場合、i 番目のインデックスが i 番目の入力ポートを選択します。

std::vector<port<output>> out;

この変数で、ノードの論理出力を指定します。pktmerge ノードの出力は 1 つです。pktsplit ノードの場合、i 番目のインデックスが i 番目の出力ポートを選択します。