IFrameFilter::setParameter Method

フレームフィルタのパラメータを設定します。

構文

tFilterError setParameter( const std::string& name, const _variant_t& value );
tFilterError setParameter( const std::string& name, const std::string& value );
tFilterError setParameter( const std::string& name, int value );
tFilterError setParameter( const std::string& name, long value );
tFilterError setParameter( const std::string& name, float value );
tFilterError setParameter( const std::string& name, bool value );
tFilterError setParameter( const std::wstring& name, const _variant_t& value );
tFilterError setParameter( const std::wstring& name, const std::wstring& value );
tFilterError setParameter( const std::wstring& name, int value );
tFilterError setParameter( const std::wstring& name, long value );
tFilterError setParameter( const std::wstring& name, float value );
tFilterError setParameter( const std::wstring& name, bool value );
パラメータ 説明
name 設定するパラメータの名前です 。
value パラメータの現在の新しい値です。

戻り値

tFilterErrorクラスライブラリリファレンス>エニュメレーション>tFilterError エニュメレーションのメンバ:

説明
eNO_ERROR パラメータの設定は正常に行われました。
ePARAM_NOT_FOUND フィルタはnameで指定されたパラメータを所有していません。
getAvailableParametersクラスライブラリリファレンス>クラス>IFrameFilter>IFrameFilter::getAvailableParameters Methodを使用して有効なパラメータの一覧を取得してください。
eINCOMPATIBLE_PARAM_VALUE nameはデータパラメータではありません。
getAvailableParametersクラスライブラリリファレンス>クラス>IFrameFilter>IFrameFilter::getAvailableParameters Methodを使用して有効なパラメータとその型の一覧を取得してください。
eINVALID_PARAM_VALUE 値を受け入れることができませんでした。例:値が範囲外であった場合。
eINVALID_FILTER_STATE データが変更不可能な状態にあるためフィルタはパラメータを受け入れることができませんでした。
例:ライブモードでない時。

備考

setDataへのコールはすべてbeginParamTransferクラスライブラリリファレンス>クラス>IFrameFilter>IFrameFilter::beginParamTransfer MethodendParamTransferクラスライブラリリファレンス>クラス>IFrameFilter>IFrameFilter::endParamTransfer Method の間に入れる必要あります。特にX/Y座標のような複数のパラメータの読み取りを行っている時はパラメータの一貫性を保つために重要となります。

サンプル

以下のサンプルはフレームフィルタのパラメータを取得する方法を紹介しています。フィルタは以下のコードによってロード、そしてセットされたとします。

smart_com<IFrameFilter> pRotFlipFilter = FilterLoader::createFilter( "Rotate Flip" );
grabber.setDeviceFrameFilters( pRotFlipFilter.get() );

パラメータの読み取りはbeginParamTransfer, setParameter, endParamTransferを使って行います。

pRotFlipFilter->beginParamTransfer();

if( eNO_ERROR != pRotFlipFilter->setParameter( "Rotation Angle", 90 ) )
{
  std::cerr << "Error setting parameter 'Rotation Angle'" << std::endl;
}

if( eNO_ERROR != pRotFlipFilter->setParameter( "Flip H", false ) )
{
  std::cerr << "Error setting parameter 'Flip H'" << std::endl;
}
if( eNO_ERROR != pRotFlipFilter->setParameter( "Flip V", true ) )
{
  std::cerr << "Error setting parameter 'Flip V'" << std::endl;
}

pRotFlipFilter->endParamTransfer();