Operator Library: Parameters
オペレーター EnumParamTranslator を使用すると、他の1つまたは複数のオペレーターのパラメータに対して、翻訳されたアクセス(読み取りおよび書き込み)を実行できます。 計算には数式を定義します。これらの数式の構文は、GenICam APIバージョン2.0に準拠しています。
オペレーター EnumParamTranslator は、VA_ENUMタイプのマップパラメータを生成します。 マップパラメータの名前は Value です。
オペレーターはパラメータ Value のタイプを VA_ENUM と定義していますが、書き込みまたは読み取り操作中にアクセスされるパラメータのデータ型を制限するものではありません。 たとえば、オペレーター内で定義された数式には、floatタイプのパラメータへのアクセスを含めることができます。

Read Action
パラメータ ReadAction では、翻訳オペレータのパラメータ Value への読み取りアクセス時に何が起こるかを定義します。 パラメータ Value は単に値を保持しているわけではありません。 代わりに、パラメータ Value の値は数式から計算されます。 この数式はパラメータ ReadAction で定義します。 パラメータ Value への読み取りアクセスが発生するとすぐに、ReadAction で定義した数式が実行され、その結果が値を要求している要素に転送されます。
数式には、デザイン内のどこにあるオペレータパラメータの値も含めることができます。 これらの値のいずれかが変更されるとすぐに、翻訳オペレータのパラメータ Value の計算は新しい結果になります (値パラメータ Value が以前に保持していた値とは異なります)。 数式には、パラメータの値だけでなく、最小値、最大値、ステップサイズ、列挙項目の数値などのパラメータの特定の Property も含めることができます。
Write Action
パラメータ WriteAction では、翻訳オペレーターのパラメータ Value への書き込みアクセス時に発生する処理を定義します。 参照オペレーターとは異なり、パラメータ Value の値を単にデザイン内の別のパラメータに転送するわけではありません。 代わりに、パラメータ Value の値は、翻訳オペレーターのパラメータ WriteAction で定義した一連の書き込みアクションに使用されます。 書き込みアクションは、1つまたは複数の等式で構成されます。 これらの等式の左側を使用して、どのオペレーターのどのパラメータが計算結果を受け取るかを定義します。 複数の等式を定義する場合は、セミコロンで等式を区切ります。 パラメータ Value への書き込みアクセスが発生するとすぐに、パラメータ WriteAction で定義した等式の右側にある数式が実行され、その結果が等式の左側で指定されたパラメータに転送されます。
数式は、デザイン内のどこにあるオペレータパラメータの値も参照できます。 これらの値のいずれかが変更されるとすぐに、以前と同じ値を Value パラメータに再書き込みしたときの計算結果が異なります。 数式には、パラメータの値だけでなく、最小値、最大値、ステップサイズ、列挙項目の数値などのパラメータの特定の Property も含めることができます。
![]() |
翻訳オペレーターパラメータの構文 |
|---|---|
|
構文はGenICam API標準バージョン2.0に準拠しています。 使用可能な数式要素は、GenICam標準で定義されている数式要素と同一です。 |
![]() |
パラメータへのパス |
||
|---|---|---|---|
|
デザイン内の任意の場所にあるオペレーターパラメータにアクセスするには、 数式内でそのパラメータへのパスを指定する必要があります。 オペレーターのパラメータにアクセスするには、次の構文を使用します。
![]()
"PathToModule": ここでは、アクセスするパラメータを持つオペレーターへの相対パスを定義します。 パスは、翻訳オペレーター自体が配置されている階層レベルからの相対パスになります。 また、アクセスするオペレーターの名前も定義します。階層の区切り文字としてスラッシュを使用します。 "Module": モジュールの名前。 翻訳オペレーターインスタンス自体の名前として、「this」を使用します。
|
![]() |
Parameter Propertyへのアクセス |
|---|---|
|
数式には、パラメータの値だけでなく、最小値、最大値、ステップサイズなどのパラメータの特定のプロパティも含めることができます:
翻訳数式では、グローバル定数を参照することもできます。グローバル定数は、翻訳数式内で次を使用して参照されます。 :: プレフィックスを使用します。例:
|
![]() |
Write Access方程式の構文 |
|---|---|
|
WriteActionパラメータで定義する書き込みアクションの方程式は、次の構文に従います。
![]()
ここでは、複数のターゲットパラメータに対して複数の方程式を定義できます。個々の方程式の区切りにはセミコロンを使用してください。 "this"は、翻訳オペレーターインスタンス自体を指します。 WriteAction方程式の例:
![]()
例:
![]()
|
![]() |
Read Access方程式の構文 |
|---|---|
|
The equation for the read action you define in parameter ReadAction. The equation always starts with "${this.Value}=" . It has the following syntax:
![]()
ReadAction方程式の例:
![]()
パラメータ「Range」での列挙定義の構文 Use the following Syntax: "<String1>"=0;"<String2>"=1; "<String3>"=2; 例:
![]()
|
マップパラメータの参照
デザイン階層内で、マップパラメータ Value が表示され、アクセス可能になるターゲットを定義できます。 ターゲットは、DisplayHierarchy と DisplayName の2つのパラメータによって定義されます。 DisplayHierarchy では、翻訳オペレーター自体が配置されているプロセスと同じプロセス内の階層ボックスを指定します。 パラメータ DisplayName でターゲットパラメータの名前を設定します。 DisplayHierarchy と DisplayName の両方が設定されている場合、 DisplayName で定義されたパラメータは、DisplayHierarchy で指定された階層ボックス内で利用可能になります。 DisplayName が空の場合、パラメータは作成されません。 DisplayName が設定されており、かつ DisplayHierarchy が空の場合、 DisplayName で定義されたパラメータは親階層(つまり、翻訳オペレーター自体が配置されている階層ボックス)に追加されます。
これにより、マップパラメータ Value を(デザインの)任意の階層レベルでアクセス可能にすることができます。 これは、保護された階層ボックスを扱う場合に特に役立ちます。 保護された階層ボックス自体のPropertyの直下にパラメータを利用できるようにすることができます。
マッピングされたパラメータ自体を参照することもできます。 したがって、翻訳オペレーター内でパラメータ Value のコンテンツを参照するか、 またはパラメータ DisplayName と DisplayHierarchy で定義したパラメータを参照することができます。 これは、保護された階層ボックスが他の保護された階層ボックスから構築されている場合に特に重要です。
このオペレーターは、設計のデータフロー構造に干渉しないため、入力と出力を持っていません。
ライブラリ Parameters の一般的な紹介については、Library Parameters を参照してください。
| Status | |
|---|---|
| タイプ | 静的読み取り(GUIには書き込みと表示されます)パラメータ |
| Default | なし |
| 範囲 | OKまたはエラーメッセージ |
|
エラーステータスを表示します。パラメータ Activate が Yes に設定されている場合、 他のオペレーター設定がチェックされます。 このパラメータには、このチェックの結果、すなわち OK またはエラーメッセージが表示されます。 このパラメータは最終的なアプレットの一部ではありません。 |
|
| DisplayName | |
|---|---|
| タイプ | static write parameter |
| Default | なし |
| 範囲 | 任意の文字列 |
|
デザイン内の別の場所からパラメータ Value へのアクセスを許可、またはそこからのアクセスを取得する場合は、 新しいパラメータを定義する必要があります。 ここにこの新しいパラメータの名前を指定します。 このフィールドが空の場合、新しいPropertyは作成されません。 |
|
| DisplayHierarchy | ||||
|---|---|---|---|---|
| タイプ | static write parameter | |||
| Default | なし | |||
| 範囲 | 任意の文字列 | |||
|
パラメータ DisplayName で定義した新しいマップパラメータを追加する階層ボックスをここで指定します。 このパラメータでは、オートコンプリート機能と構文ハイライトを使用できます。オートコンプリートを使用するには、 Module Properties ダイアログにあるこのパラメータの Parameter Values フィールドをクリックし、キーボードの TAB キーを押します。オートコンプリート機能の詳細な手順については、 'Autocompletion and Syntax Highlighting for Translator and Reference Operators' を参照してください。 新しいパラメータ DisplayName を定義したが、パラメータ DisplayHierarchy を空のままにした場合、新しいパラメータは参照オペレータインスタンスを含む階層ボックスに追加されます(参照オペレータインスタンスが最上位(プロセス)レベルにある場合は実行できませんのでご注意ください)。
|
||||
| 値 | |
|---|---|
| タイプ | static、dynamic、write、readパラメータ |
| Default | Default |
| 範囲 | |
|
読み取りおよび書き込みアクセス用に指定された等式を介して、他のパラメータにアクセスするためのパラメータ。 |
|
| 説明 | |
|---|---|
| タイプ | static write parameter |
| Default | - |
| 範囲 | 任意のテキスト |
|
パラメータ Value の説明をここに入力します。 |
|
| 範囲 | |
|---|---|
| タイプ | static write parameter |
| Default | "Default"=0; |
| 範囲 | |
|
名前と値の組み合わせの定義。 |
|
| WriteAction | |
|---|---|
| タイプ | static write parameter |
| Default | |
| 範囲 | |
|
パラメータ Value への書き込みアクセス時の変換用方程式の定義。 このパラメータでは、入力補完機能と構文ハイライトを使用できます。入力補完を使用するには、 Module Properties ダイアログにあるこのパラメータの Parameter Values フィールドをクリックし、“${” と入力します。 入力補完機能の詳細な手順については、'Autocompletion and Syntax Highlighting for Translator and Reference Operators' を参照してください。 |
|
| ReadAction | |
|---|---|
| タイプ | static write parameter |
| Default | |
| 範囲 | |
|
パラメータ Value からの読み取りアクセス時の変換用方程式の定義。 方程式は常に「${this.Value}=」で始まります。 このパラメータでは、入力補完機能と構文ハイライトを使用できます。入力補完を使用するには、 Module Properties ダイアログにあるこのパラメータの Parameter Values フィールドをクリックし、“${” と入力します。 入力補完機能の詳細な手順については、'Autocompletion and Syntax Highlighting for Translator and Reference Operators' を参照してください。 |
|
| Activate | |
|---|---|
| タイプ | 動的書き込みパラメータ |
| Default | いいえ |
| 範囲 | {No,Yes} |
|
Yes = 参照パラメータとの間のアクセス(読み取りおよび書き込み方程式を介したアクセス)が有効になります。 No = 参照パラメータとの間のアクセス(読み取りおよび書き込み方程式を介したアクセス)が無効になり、パラメータ Status が無効化されます。パラメータ DisplayName および DisplayHierarchy は効果を持ちません。 |
|
オペレーター EnumParamTranslator の使用方法を次の例に示します:
-
DMA、RAM、GPIO、トリガー、LEDのハードウェアセルフテストの例。
-
例 - パラメータを操作するためのパラメータ変換オペレータの使用方法のデモンストレーション。

![[ヒント]](../common/images/admon/tip.png)

![[重要]](../common/images/admon/important.png)






![[注]](../common/images/admon/note.png)

前へ

