スーパーノードのプロパティー

スーパーノード固有のプロパティーを次の表に示します。共通のノード・プロパティーもスーパーノードに適用されることに注意してください。

表 1. ターミナル・スーパーノードのプロパティー
プロパティー名 プロパティーの種類/値のリスト プロパティーの説明
execute_method Script Normal  
script 文字列  

スーパーノードのパラメーター

次の一般形式を使用して、スーパーノードのパラメーターを作成または設定するためにスクリプトを使用できます。

mySuperNode.setParameterValue("minvalue", 30)

以下を使用して、パラメーター値を取得することができます。

value mySuperNode.getParameterValue("minvalue")

既存のスーパーノードの検索

findByType() 関数を使用して、ストリーム内のスーパーノードを検索できます。

source_supernode = modeler.script.stream().findByType("source_super", None)
process_supernode = modeler.script.stream().findByType("process_super", None)
terminal_supernode = modeler.script.stream().findByType("terminal_super", None)

カプセル化ノードのプロパティー設定

スーパーノード内の子ダイアグラムにアクセスすることにより、スーパーノードの中にカプセル化された特定のノードのプロパティーを設定できます。例えば、データを読み込むためにカプセル化された可変長ファイルのある入力スーパーノードがあるとします。以下のようにして、子ダイアグラムにアクセスし、関連ノードを検索することにより、読み込みファイルの名前 (full_filename プロパティーを使用して指定) を渡すことができます。

childDiagram = source_supernode.getChildDiagram()
varfilenode = childDiagram.findByType("variablefile", None)
varfilenode.setPropertyValue("full_filename", "c:/mydata.txt")

スーパーノードの作成

スーパーノードとその中身を初めから作成する場合、同様の方法で行うことができます。このためには、スーパーノードを作成し、子ダイアグラムにアクセスして、目的のノードを作成します。スーパーノードのダイアグラム内のすべてのノードを、入力コネクター・ノードや出力コネクター・ノードとリンクさせるようにすることも必要です。例えば、プロセス スーパーノードを作成する場合は、次のようにします。

process_supernode = modeler.script.stream().createAt("process_super", "My SuperNode", 200, 200)
childDiagram = process_supernode.getChildDiagram()
filternode = childDiagram.createAt("filter", "My Filter", 100, 100)
childDiagram.linkFromInputConnector(filternode)
childDiagram.linkToOutputConnector(filternode)