OS X用GigE Visionカメラドライバ - その23 [OS X用GigE Vision]
もう惰性で続けるしかない抄訳の続き。今日はカメラの機能を表すノードのアトリビュートについて。
このドキュメントはGenApiSchema_Version_1_1.xsdファイルのGenApiスキーマバージョン1.1に基づいている。これに続くバージョンにはノードタイプ、エレメント、アトリビュートが追加される。しかし可能な限り後方互換性は維持される。
それぞれのNameは名前空間の中で定義されている。名前空間はノードのNameSpceアトリビュートと<RegisterDesription>エレメント(セクション2.7を見よ)のStandardNameSpaceアトリビュートとの組み合わせで表される。NameSpaceアトリビュートは二つの可能な値、CustomとStandardがあり得る。Customであればカメラ記述ファイルの中でだけ唯一であればどんな名前でも使える。もしStandardであれば次のカメラタイプで利用可能なstandard feature name listsのなかのひとつでなければならない。カメラタイプは(詳細はセクション)次のものである。
<ToolTip>エレメントはそのノードに対する短い説明を加える。カメラ記述ファイルから自動生成されたドキュメントにたいする簡単な説明としても使える。
<Description>エレメントはさらに詳しい説明を与える。カメラ記述ファイルから自動生成されたドキュメントにたいする詳細な説明としても使える。
<DisplayName>エレメントは機能そのものの名前の代わりの見出しとして使える。
<Visibility>エレメントはその機能にアクセスしていいユーザのレベルを指定する。可能な値として
<IventID>エレメントは非同期イベントを発行するために使われる。カメラはいくつかのデータの値が変わったことを示すためにイベントパッケージを送ることがある。GenICamはそのデータに対応するノードを無効化するイベントを扱う。そのノードはカメラからのイベントパッケージで来る16進数がEventIDにあるかどうかでわかる。それぞれのノードはひとつのオプショナルなEventIDエレメントを持つことができる。
<pIsImpelemted>、<pIsVariable>、<pIsLocked>エレメントはIIntegerインターフェイスを実装するノードの名前を含んでる。そのエレメントがあると、このノードのアクセスモード(セクション)に影響する。
<pBlockPolling>エレメントは、その値が0でないときにPollingTimeエントリをもつノードのポーリングをブロックする。
<ImposedAccessMode>エレメントは他のノードから指定されたアクセスモードを限定するために使われる。
<pAlias>は同じ機能を異なるやり方で記述する他のノードを指定する。これは主にGUIで使われる。カテゴリはすべてのメンバが表示されていないときそのエイリアスで置き換えられる。整数ノードとフラットノードは機能のナマの値か絶対値の値を示しているときにお互いがエイリアスとなることがある。
<pCastAlias>は同じ機能をオリジナルとエイリアスがお互いがキャストし合うことをあらわすことで記述するもう一方のノードを指定する(なんのこっちゃ?)。
<IsDeprecated>は対応する機能が使用不可で、新しい設計では使ってはいけないことを表す。
<Streamable>は対応する機能がGenApiノードツリーを通してファイルからロードされて保存されるようなものであることを示す。
<pError>はノードの値を設定したあとにチェック退れる列挙を指定する。列挙はIntValueエントリを持って、それが0であればエラーなしである。他の値が設定されていると列挙のDisplayNameとToolTipを例外として投げる。
<DocuURL>はそのノードの説明があるhttp URLを提供する。その表記は変数を含む。その変数は$(NAME)の形で、NAMEはノードの名前か以下の特別な名前である。
2.8 利用可能なノードタイプ
このセクションでは可能なノードタイプとその振る舞い、使い方、主なパラメータを簡単に説明する。さらに、GenICam規格に含まれたXMLスキーマファイルのなかでのそれぞれのノードのXMLレイアウトの公式な記述も行う。このスキーマファイルはほとんどのXMLエディタで読むことができて、シンタクスチェックと概略ヘルプのおかげで非常に簡単にカメラ記述ファイルを作成することができる。このドキュメントはGenApiSchema_Version_1_1.xsdファイルのGenApiスキーマバージョン1.1に基づいている。これに続くバージョンにはノードタイプ、エレメント、アトリビュートが追加される。しかし可能な限り後方互換性は維持される。
2.8.1 ノード
Node型はほかのノードタイプに共通のエレメントとアトリビュートを持っている。独立のノードはまったく役に立たないが、テスト目的には利用できる。ここに例を示す。<Node Name="Gain" NameSpace="Standard"> <Extension> <MyElement>Something vendor specific</MyElement> </Extension> <ToolTip>The amplitication of the camera</ToolTip> <Description>A more elborated description</Description> <DisplayName>Gain</DisplayName> <Visibility>Expert</Visibility> <EventID>12fc</EventID> <pIsImplemented>SomeNode1</pIsImplemented> <pIsAvailable>SomeNode2</pIsAvailable> <pIsLocked>SomeNode3</pIsLocked> <pError>NodeIndicatingAnError</pError> <ImposedAccessMode>RO</ImposedAccessMode> <pAlias>SomeNode4</pAlias>それぞれのノードはNameアトリビュートを持っている。Nameはカメラ記述ファイルの中で固有(ひとつだけ)でなければならない。Nameは英数字[A-Za-z0-9]でできていなければならない。スキーマはアンダースコア"_"も許しているが、先頭にあってはならない。これは標準実装が先頭のアンダスコアは実装に依存した名前に使っているからである。
それぞれのNameは名前空間の中で定義されている。名前空間はノードのNameSpceアトリビュートと<RegisterDesription>エレメント(セクション2.7を見よ)のStandardNameSpaceアトリビュートとの組み合わせで表される。NameSpaceアトリビュートは二つの可能な値、CustomとStandardがあり得る。Customであればカメラ記述ファイルの中でだけ唯一であればどんな名前でも使える。もしStandardであれば次のカメラタイプで利用可能なstandard feature name listsのなかのひとつでなければならない。カメラタイプは(詳細はセクション)次のものである。
- IIDC
- 1393IIDC規格準拠(DCAMとも言われる)
- GEV
- GigE Vision規格準拠
- CL
- カメラリンク規格準拠
- USB
- USB規格準拠
- None
- 規格なし
- ノードがAかBだけにあればCにコピーされる
- AとBにnon-Categoryノードがあればつぎのルールが適用される(ファイルAにあるMaergePriolityは無視されることに注意)
ノードがファイルBから差し込まれて- MergePriorityが+1のとき、Cにコピーされる
- MergePriorityが-1のとき、ファイルAの対応するノードがCにコピーされる
- MergePriorityが0(デフォルト)またはMergeAttrbiuteがないとき、エラーとなる
- AとBとにカテゴリノードが含まれているとき、ファイルAからそのカテゴリノードがCにコピーされて、Bにある<pFeature>エントリが重複を避けてコピーされる
- 機能を表すノードでそのExposeStaticがNoでないとき、その機能はユーザに知らされる
- 機能のノードでないときはExposeStaticがYesのときだけ、ユーザにさらされる
<ToolTip>エレメントはそのノードに対する短い説明を加える。カメラ記述ファイルから自動生成されたドキュメントにたいする簡単な説明としても使える。
<Description>エレメントはさらに詳しい説明を与える。カメラ記述ファイルから自動生成されたドキュメントにたいする詳細な説明としても使える。
<DisplayName>エレメントは機能そのものの名前の代わりの見出しとして使える。
<Visibility>エレメントはその機能にアクセスしていいユーザのレベルを指定する。可能な値として
- Beginner
- Expert
- Guru
- Invisible
<IventID>エレメントは非同期イベントを発行するために使われる。カメラはいくつかのデータの値が変わったことを示すためにイベントパッケージを送ることがある。GenICamはそのデータに対応するノードを無効化するイベントを扱う。そのノードはカメラからのイベントパッケージで来る16進数がEventIDにあるかどうかでわかる。それぞれのノードはひとつのオプショナルなEventIDエレメントを持つことができる。
<pIsImpelemted>、<pIsVariable>、<pIsLocked>エレメントはIIntegerインターフェイスを実装するノードの名前を含んでる。そのエレメントがあると、このノードのアクセスモード(セクション)に影響する。
<pBlockPolling>エレメントは、その値が0でないときにPollingTimeエントリをもつノードのポーリングをブロックする。
<ImposedAccessMode>エレメントは他のノードから指定されたアクセスモードを限定するために使われる。
<pAlias>は同じ機能を異なるやり方で記述する他のノードを指定する。これは主にGUIで使われる。カテゴリはすべてのメンバが表示されていないときそのエイリアスで置き換えられる。整数ノードとフラットノードは機能のナマの値か絶対値の値を示しているときにお互いがエイリアスとなることがある。
<pCastAlias>は同じ機能をオリジナルとエイリアスがお互いがキャストし合うことをあらわすことで記述するもう一方のノードを指定する(なんのこっちゃ?)。
<IsDeprecated>は対応する機能が使用不可で、新しい設計では使ってはいけないことを表す。
<Streamable>は対応する機能がGenApiノードツリーを通してファイルからロードされて保存されるようなものであることを示す。
<pError>はノードの値を設定したあとにチェック退れる列挙を指定する。列挙はIntValueエントリを持って、それが0であればエラーなしである。他の値が設定されていると列挙のDisplayNameとToolTipを例外として投げる。
<DocuURL>はそのノードの説明があるhttp URLを提供する。その表記は変数を含む。その変数は$(NAME)の形で、NAMEはノードの名前か以下の特別な名前である。
- Sys::NodeName
- 現在のノードの名前
- Sys::ModelName
- XMLファイルのModelNameアトリビュート
- Sys::VenderName
- XMlファイルのVendorNameアトリビュート
- Sys::StandardNamespace
- XMLファイルのStandardNamespaceアトリビュート
- Sys::DeviceVersion
- GenApiのバージョン
- Sys::SchemaVersion
- スキーマのバージョン
- Sys::Application
- 実行ファイルの名前
- Sys::OperationSystem
- OSの名前、フォーマットは"Window5.1_SP3.0"
- Sys::Language
- ロケール、フォーマットは"German"
2015-01-31 19:02
nice!(0)
コメント(0)
トラックバック(0)
コメント 0