Microsoft DirectX 8.0 (C++)

IDirectInputDevice8::SendForceFeedbackCommand

デバイスのフォース フィードバック システムにコマンドを送信する。

HRESULT SendForceFeedbackCommand(
  DWORD dwFlags  
);

パラメータ

dwFlags
目的の状態変化を示す単一の値。次のいずれか 1 つの値を取ることができる。
DISFFC_CONTINUE
中断されたすべてのアクティブなエフェクトの再生を継続する。デバイスが中断状態にないときにこのコマンドを送信すると、エラーになる。
DISFFC_PAUSE
すべてのアクティブ エフェクトの再生を中断する。このコマンドはエフェクトのクロックも停止するので、再開すると、エフェクトは継続時間を満了するまで再生が続行される。

デバイスが中断状態にある間は、新しいエフェクトを開始したり、既存のエフェクトを変更したりすることはできない。そのような操作を行うと、これ以降の DISFFC_CONTINUE コマンドが正常に機能しなくなることがある。

中断を破棄してすべてのエフェクトを停止するには、DISFFC_STOPALL または DISFCC_RESET コマンドを使用する。

DISFFC_RESET
デバイスのフォース フィードバック システムを始動状態にする。すべてのエフェクトはデバイスから削除され、有効でなくなる。これらのエフェクトを再び使用するには、再生成しなければならない。デバイスのアクチュエータは無効である。
DISFFC_SETACTUATORSOFF
デバイスのフォース フィードバック アクチュエータを無効にする。アクチュエータがオフの間も、エフェクトは引き続き再生されるが、デバイスはそれを無視する。音楽再生デバイスにたとえると、エフェクトは一時停止 (ポーズ) ではなく、消音 (ミュート) された状態である。
DISFFC_SETACTUATORSON
デバイスのフォース フィードバック アクチュエータを有効にする。
DISFFC_STOPALL
すべてのアクティブなエフェクトの再生を停止する。アクティブなエフェクトはすべてリセットされるが、デバイスには保存されており、引き続き有効である。デバイスが中断されている場合、その状態は失われる。

このコマンドは、再生中のエフェクトごとに IDirectInputEffect::Stop メソッドを呼び出すことに等しい。

戻り値

成功した場合は、DI_OK を返す。

失敗した場合は、次のいずれかのエラー値を返す。

DIERR_INPUTLOST
DIERR_INVALIDPARAM
DIERR_NOTEXCLUSIVEACQUIRED
DIERR_NOTINITIALIZED
DIERR_UNSUPPORTED

注意

このメソッドを成功させるには、デバイスを排他協調レベルで取得しなければならない。

動作環境

  Windows NT/2000 : Windows 2000 以降に対する再配布可能ファイルとして提供。
  Windows 95/98 : Windows 95 以降に対する再配布可能ファイルとして提供。
  ヘッダー : dinput.h で宣言。