次の方法で共有


PO_FX_COMPONENT_PERF_STATE_CALLBACK コールバック関数 (wdm.h)

ComponentPerfStateCallback コールバック ルーチンは、コンポーネントのパフォーマンス状態を変更する要求が完了したことをドライバーに通知します。

構文

PO_FX_COMPONENT_PERF_STATE_CALLBACK PoFxComponentPerfStateCallback;

void PoFxComponentPerfStateCallback(
  [in] PVOID Context,
  [in] ULONG Component,
  [in] BOOLEAN Succeeded,
  [in] PVOID RequestContext
)
{...}

パラメーター

[in] Context

デバイス コンテキストへのポインター。 デバイス ドライバーは、このコンテキストを使用して、デバイスの現在の電源状態に関する情報を格納します。 デバイス ドライバーは、デバイスを電源管理フレームワーク (PoFx) に登録するためにドライバーが使用したPO_FX_DEVICE構造体の DeviceContext メンバーにこのポインターを指定しました。 このコンテキストは PoFx に対して不透明です。

[in] Component

コンポーネントを識別するインデックスを指定します。 このパラメーターは、デバイス ドライバーが PoFx にデバイスを登録するために使用したPO_FX_DEVICE構造体の Components 配列へのインデックスです。 Components 配列に N 個の要素が含まれている場合、コンポーネントインデックスの範囲は 0 から N ~ 1 です。

[in] Succeeded

TRUE の場合、プラットフォーム拡張機能プラグイン (PEP) はパフォーマンス状態の変更に成功しました。 FALSE の場合、PEP はパフォーマンス状態の変更に失敗しました。 詳細については、「解説」を参照してください。

[in] RequestContext

PoFxIssueComponentPerfStateChange ルーチンまたは PoFxIssueComponentPerfStateChangeMultiple ルーチンの Context パラメーターで指定された、省略可能なドライバーまたはデバイス コンテキストへのポインター。

戻り値

なし

解説

デバイス ドライバーが PoFxIssueComponentPerfStateChange または PoFxIssueComponentPerfStateChangeMultiple ルーチンを呼び出してパフォーマンス状態の変更を要求すると、PoFx は ComponentPerfStateCallback ルーチンを 呼び出して、要求が完了したときにドライバーに通知します。

ComponentPerfStateCallback ルーチンを指定するには、ドライバーが PoFx によるパフォーマンス状態管理に登録するときに、PoFxRegisterComponentPerfStates ルーチンの ComponentPerfStateCallback パラメーターを使用します。 ComponentPerfStateCallback ルーチンは、すべてのコンポーネントとすべてのデバイスで同じにすることができます。

Succeeded が TRUE の場合、ドライバーはハードウェアのパフォーマンス状態を変更するために必要な作業を実行する必要があります。 Succeeded が FALSE の場合、ドライバーは何もしないか、同じパフォーマンス状態または別のパフォーマンス状態で要求を再試行することを選択できます。

要件

要件
サポートされている最小のクライアント Windows 10 以降でサポートされています。
対象プラットフォーム デスクトップ
Header wdm.h
IRQL IRQL <= DISPATCH_LEVELで呼び出されます。

こちらもご覧ください

PoFxIssueComponentPerfStateChange

PoFxIssueComponentPerfStateChangeMultiple

PoFxRegisterDevice