cniDefineNodeClass

name パラメーターで指定したとおりにノード・クラスを定義します。 これは、factoryObject パラメーターとして指定されるノード・ファクトリーによってサポートされます。 この関数は、bipGetMessageFlowNodeFactory の実行時に LIL がロードされる際にノードによって呼び出されます。

構文

void cniDefineNodeClass(
    int*                        returnCode,
    CciFactory* factoryObject,
    CciChar*    name,
  CNI_VFT*     functbl);

パラメーター

returnCode
関数からの戻りコード (出力)。
factoryObject
名前付きノードをサポートするファクトリー・オブジェクトのアドレス (入力)。 このアドレスは、cniCreateNodeFactory から戻されます (入力)。
name
定義されるノードの名前。 ノードの名前には最後に文字 Node を付ける必要があります(入力)。
functbl
ノード・インプリメンテーション関数へのポインターを含む CNI_VFT 構造のアドレス (入力)。 以下に示すのは、関数テーブルの例です。
vftable.iFpCreateNodeContext = _Transform_createNodeContext;
vftable.iFpDeleteNodeContext = _deleteNodeContext;
vftable.iFpGetAttributeName  = _getAttributeName;
  vftable.iFpSetAttribute      = _setAttribute;
  vftable.iFpGetAttribute      = _getAttribute;
vftable.iFpEvaluate          = _Transform_evaluate; /* if not an input node */
vftable.iFRun                = _run                 /* if an input node */

一般に、最後の 2 つの項目のうち 1 つだけを定義します。 つまり、メッセージ処理ノードの場合は vftable.iFpEvaluate = _Transform_evaluate; を定義し、 入力ノードの場合は vftable.iFpRun = _run; を定義します。

戻り値

なし。エラーが発生した場合、returnCode パラメーターがエラーの理由を示します。

関連概念
ユーザー定義の入力ノード
ユーザー定義のメッセージ処理ノード
ユーザー定義の出力ノード

関連タスク
C での入力ノードの作成
C でのメッセージ処理ノードの作成

関連資料
C 言語ノード・ユーティリティー関数
cniCreateNodeFactory