マルチプロセス

VisualAppletsプロジェクトには、複数のプロセスを含めることができます。 プロセスはダイアグラムの最上位レベルであり、任意の数の演算子と階層化ボックスを含めることができます。 各プロセスは個別に起動および停止できます。

2つのプロセスを使用する良い例として、2眼カメラアプリケーションが挙げられます。 次の図をご覧ください。 図には、それぞれのプロセスにカメラ、バッファ、DMA演算子が含まれる2つのプロセスが示されています。

2つのプロセスを持つアプレット

図146. 2つのプロセスを持つアプレット


このアプレットを使用する場合、両方のプロセス、つまり両方のカメラを個別に起動および停止できます。 両方のカメラが同じプロセスにある場合、プロセスのすべてのDMAを常に起動する必要があるため、それらは同時に起動および停止する必要があります。

ハードウェア上でのVisualAppletsアプレットの使用方法の詳細については、「Running Your Applet on Hardware」セクション、および/またはFramegrabber SDK documentationを参照してください。

プロセスの管理

新しいプロセスを追加するには、 Design → New Process をクリックするか、Editツールバーのアイコンを選択します。

新しいプロセスの作成

図147. 新しいプロセスの作成


プロセスを削除するには、まずそのプロセスに属する任意のダイアグラムウィンドウを選択し、続いて Design → Remove Process を選択するか、Editツールバーのアイコンを選択します。

プロセスは常にインデックス0から始まり、昇順で配置される必要があります。 プロセスが削除された場合、より高いインデックスを持つプロセスが詰めて配置されます。

DMAなしのプロセス / トリガープロセス

前述のとおり、アプレットプロセスは、該当するプロセスのすべてのDMAが起動された後でのみ、ハードウェア上で使用できます。 ただし、プロセスにDMAチャンネルが含まれていない場合、アプレットの初期化直後に起動されます。 これは、画像取得の開始前に使用されるトリガーおよび信号処理アプリケーションに役立ちます。

ハードウェア上でのVisualAppletsアプレットの初期化と使用方法の詳細については、「Running Your Applet on Hardware」セクション、および/またはFramegrabber SDK documentationを参照してください。

プロセス間の通信

プロセス間で画像データをやり取りすることはできません。 ただし、TxSignalLinksおよびRxSignalLinks演算子を使用することで、信号のプロセス間通信を確立できます。