TclPlugin

Tclインタープリター用のプラグインサポート。

入力

ents
エンティティテーブル
src
値テーブル
begin
beginイベントでコールされるべきプロシージャ(オプション)
onrecord
onrecordイベントでコールされるべきプロシージャ
end
endイベントでコールされるべきプロシージャ(オプション)
opt_str
ユーザー定義の引数文字列を渡すために指定(オプション)
script
イベントプロシージャの定義を含んだファイル

出力

answer
値テーブル

コメント

  • ents内のイベントは、src内の値の結合と一致している必要があります。例えば、srcが要素スカラーを含む場合、entsは同じプールからの要素を含んでいなくてはなりません。
  • onrecordプロシージャは必須であり、beginプロシージャとendプロシージャはオプションです。

シンタックス

プリファレンスファイル内に *RegisterResultMathPluginエントリが必要。Configurationセクションを参照のこと。

XMLの例

<call name="TclPlugin" ents="ent_tab" src="src_tab" 
begin="begin_proc" onrecord="record_proc" 
end="end_proc" 
script="tcl_script_filepath" 
answer="answer" />
クエリおよびアクションイベント(以下に示す)は、Tclインタープリターが受け入れる文字列引数(大文字小文字を区別)に追加されます:
クエリ / アクション関数 詳細
GetTableInfo テーブルのクエリをサポートし、1つの引数を受け入れます:
  • label: テーブルラベルを返す
  • domain: テーブルドメイン("real"または"complex")を返す

GetTableInfoは、BeginおよびEndイベントでコールされ得ます。

GetRecordInfo レコードのクエリをサポートし、以下の引数を受け入れます:
  • id: 値のレコードに付加されたエンティティIDを返す
  • partid: partid要素に付加されたパートIDを返す(要素に結合されていない値には0を返す)
  • config: 要素コンフィギュレーション番号を返す
  • data: レコード内の値をスペース区切りの番号として返す
  • tensor: テンソル値のレコードにのみ有効で、インバリアントを抽出するために2つ目のパラメータを受け入れる:
    • p1– 最大主
    • p2– 中間主
    • p3– 最小主
    • von– vonMises
  • vector: ベクトル値のレコードにのみ有効で、インバリアントを抽出するために2つ目のパラメータを受け入れる:
    • mag– ベクトルの大きさ

GetRecordInfoは、OnRecordイベント内においてのみコールされ得ます。

AddRecord 値を宛先テーブルに送り、IDとそれに続くスペース区切りの値のリストを含んだ文字列を受け入れます。例えば、ベクトル値を追加する際、コールは以下のようになります:

AddRecord “$ent_id $vec_val”

ここで:

ent_idは、IDと判断される変数

vec_valは、3つのベクトル成分と判断される変数

GetOption

GetOption(key)

指定されている場合に引数“opt_str”内で渡される文字列、もしくはキーと関連付けられたオプションの引数を返します。
ThrowException コントロールを行うアプリケーションにメッセージを送信し、プラグイン操作の実行を終了します。シンタックスは:

ThrowException $err_string

記述されたプラグインがHyperViewから実行される際、例外の文字列は、tkコンソールウィンドウ内に出力されます。