フレームフィルタモジュールウィザード

ここではウィザードを使用しフレームフィルタモジュールを作成する方法について説明します。フレームフィルタモジュールは IC Imaging Controlアプリケーションを使ってロードすることができます。

使い方

Visual Studio を立ち上げ、"スタートページ"が表示されたら"作成"をクリックしてください。
あるいはメニューよりファイル -> 新規作成-> プロジェクト と選択してください。
以下のダイアログが表示されます。

IC Frame Filter Moduleというアイコンを選択し、プロジェクト名の欄にプロジェクト名を入力してください。

例としてここではMyFilterModuleとします。これがFTFモジュールファイルの名前となります。OKをクリックし、次にプロジェクトプロパティを設定します。


入力フィールド

フレームフィルタモジュールウィザードはフレームフィルタクラスをプロジェクトに追加します。入力フィールドに関しては フレームフィルタクラスウィザードプロジェクトウィザード>フレームフィルタクラスウィザードとほぼ同様です。

  • Filter name

    作成時にユーザーが指定するフィルタ名です。ソースコードのサンプルについてはこちらプログラマーズガイド>フィルタモジュールの作成をご参照ください。

  • Class name

    クラス名です。

  • .h file

    クラスのヘッダファイルの名前です。クラスウィザードによって自動的に決定されますが、変更することは可能です。

  • .cpp fil

    クラスのcpp(ソース)ファイル名です。クラスウィザードによって自動的に決定されますが、変更することは可能です。

  • Transform filter / Update filter

    これらラジオボタンは新規作成されたフレームフィルタがtransformフィルタかupdateフィルタかを決定します。
    フィルタによってビデオフォーマットやフレームのカラーフォーマットが変更される場合にはtransformフィルタが使用されます。メモリーに新しいフレームが作成され、そこにソースフレームのデータがコピーされます。
    updateフィルタは現在のフレームに直接変更を行います。

  • Property dialog

    このボックスにチェックを入れた場合、ウィザードがフレームフィルタクラス用のプロパティダイアログを作成します。これによってパラメータの調整を行うことができます。

  • Notify at start and stop live video

    このボックスにチェックを入れた場合、フレームフィルタクラスウィザードがメソッドを挿入します。
    それらはstartLiveクラスライブラリリファレンス>クラス>Grabber>Grabber::startLive MethodstopLiveクラスライブラリリファレンス>クラス>Grabber>Grabber::topLive Method の呼び出し時にコールされるもので、notifyStartクラスライブラリリファレンス>クラス>FrameFilterImpl>FrameFilterImpl::notifyStart Method , notifyStopクラスライブラリリファレンス>クラス>FrameFilterImpl>FrameFilterImpl::notifyStop Methodという名前です。ブーリアンアトリビュート 'm_bLiveVideoRunning' を新たにクラスへ追加することもできます。メソッドは以下のようになります。

    //////////////////////////////////////////////////////////////////////////
    // このメソッドはライブ画像の開始とともにframeworkより呼び出されます。
    //////////////////////////////////////////////////////////////////////////
    void CMyFilter::notifyStart( const FrameTypeInfo& in_type, const FrameTypeInfo& out_type )
    {
      m_bLiveVideoRunning = true;
    }
    
    //////////////////////////////////////////////////////////////////////////
    // このメソッドはライブ画像の停止とともにframeworkより呼び出されます。 
    //////////////////////////////////////////////////////////////////////////
    void CMyFilter::notifyStop()
    {
      m_bLiveVideoRunning = false;
    }

  • IC installation path

    IC Imaging Controlのインストールディレクトリが入ります。
    このディレクトリににはclasslib\*\TIS_UDSHL*.LIBライブラリが含まれています。またプロジェクトの実行ファイルもこれらのディレクトリに保存されおり、これによって依存性の問題が全て解決できることになります。

ここまでの手順を全て終えましたら、Finishボタンを押してください。ウィザードがクラスを作成します。