グレイサーチ結果
Namespace: FVIL.GS2Assembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
[SerializableAttribute] public class CFviGS2Result : CFviDataObject, IEnumerable<F_GS_RESULT>, IXmlSerializable |
Visual Basic |
---|
<SerializableAttribute> Public Class CFviGS2Result Inherits CFviDataObject Implements IEnumerable(Of F_GS_RESULT), IXmlSerializable |
Remarks
グレイサーチ結果を格納するクラスです。
このクラスは、アンマネージ環境のヒープに F_GS_RESULT 構造体の配列を確保します。
確保した領域のアドレスは、Address に保管され、
Clear()()()() が呼ばれた時や
このインスタンスが解放される時に自動的に解放されます。
このクラスは、.NET 環境とネイティブ環境の間で大量の画像処理データの受け渡しを行うことを目的としています。
通常、.NET 環境の固定長配列をネイティブ環境に受け渡す場合は マーシャリングが必要になり、
データのコピーが少なくとも1回は発生します。
ネイティブ環境の処理結果を .NET 環境に反映する場合(In,Out 属性の引数の場合)は、計2回発生します。
このクラスを使用するとマーシャリングの必要が無い為、データコピーのコスト削減が行えます。
領域の確保と解放について:
領域の確保と解放は FIE ライブラリを使用しています。 外部で確保した領域を設定することもできますが、 アロケータを一致させる必要がありますのでご注意ください。(下表参照) 自動的に解放したくない場合は、 IsAttach を true に設定することで回避できます。
その他の操作:
操作 | メソッド | 概要 |
---|---|---|
領域設定 | SetBuffer(F_GS_RESULT_PTR, Int32, Boolean) | 外部で確保した領域を設定する場合に使用します。 |
アタッチ | Attach(Object) | 同一型のインスタンスが保有する領域にアタッチします。 |
移動 | MoveFrom(Object) | 同一型のインスタンスが保有する領域をこのインスタンスに移動します。 |
複製 | CopyFrom(Object) | 同一型のインスタンスの内容を複製します。 |
初期値と範囲:
プロパティ | 初期値 | 範囲 | 説明 |
---|---|---|---|
Item[([( Int32])]) | (なし) | F_GS_RESULT | 配列の要素の取得または設定を行います。 |
Address | IntPtr.Zero | IntPtr.Zero または 有効なアドレス | 配列の先頭アドレスの取得を行います。 |
Count | 0 | 0,1~ | 配列の要素数の取得を行います。 |
IsAttach | false | false/true | アタッチ状態の取得または設定を行います。 |
SizeOfItem | sizeof(F_GS_RESULT) | sizeof(F_GS_RESULT) | 配列要素1つ分のサイズ(byte)を取得します。 |
Size | 0 | SizeOfItem × Count | 配列全体のサイズ(byte)を取得します。 |
型変換:
項目 | 複製元(左記)→自身 | 複製先(左記)←自身 |
---|---|---|
CFviGSearchData |
XY座標を 100.0 で割って複製します。 スコアはそのまま複製されます。 |
XY座標に 100 を掛けて四捨五入した値を複製します。 スコアはそのまま複製します。 |
特殊な型変換:
従来の正規化相関サーチ結果からデータ変換するには CopyFrom(Object) メソッドを使用してください。 型変換は CFviGSearchData からの変換に従属します。
項目 | 説明 |
---|---|
CFviGSearchResult |
従来の正規化相関サーチ結果クラスが保有するデータを複製します。 |