次の方法で共有


PcNewInterruptSync 関数 (portcls.h)

PcNewInterruptSync 関数は、割り込み同期オブジェクトを作成して初期化します。

構文

PORTCLASSAPI NTSTATUS PcNewInterruptSync(
  [out]          PINTERRUPTSYNC    *OutInterruptSync,
  [in, optional] PUNKNOWN          OuterUnknown,
  [in]           PRESOURCELIST     ResourceList,
  [in]           ULONG             ResourceIndex,
  [in]           INTERRUPTSYNCMODE Mode
);

パラメーター

[out] OutInterruptSync

この関数によって作成された割り込み同期オブジェクトの出力ポインター。 このパラメーターは、関数が新しく作成された IInterruptSync オブジェクトへの参照を出力する呼び出し元割り当てポインター変数を指します。 このパラメーターに有効な NULL 以外のポインター値を指定します。

[in, optional] OuterUnknown

オブジェクトを集計する必要があるオブジェクトの IUnknown インターフェイスへのポインター。 集計が必要な場合を除き、このパラメーターを NULL に設定 します

[in] ResourceList

初期化中にミニポート ドライバーに提供された IResourceList オブジェクトへのポインター。 ポート ドライバーは、このリソースの一覧を確認しますが、変更しません。

[in] ResourceIndex

リソース リスト内の割り込みリソースのインデックスを指定します。 IResourceList::NumberOfEntriesOfType メソッドが CmResourceTypeInterrupt 型の N のカウントを返す場合、ResourceIndex は 0 ~ N-1 の範囲の値である必要があります。

[in] Mode

複数の ISR の処理方法を指定します。 このパラメーターを、INTERRUPTSYNCMODE 列挙値のいずれかに設定します。 詳細については、「解説」を参照してください。

戻り値

呼び出しが成功した場合、PcNewInterruptSync はSTATUS_SUCCESSを返します。 それ以外の場合は、適切なエラー コードを返します。

注釈

Mode パラメーターは、次の表のいずれかの INTERRUPTSYNCMODE 列挙値に設定されています。

意味
InterruptSyncModeNormal リスト内の各 ISR を呼び出し、そのうちの 1 つがSTATUS_SUCCESSを返すまで呼び出します。
InterruptSyncModeAll さまざまな ISR のリターン コードに関係なく、リスト内の各 ISR を 1 回だけ呼び出します。
InterruptSyncModeRepeat リスト内の ISR がSTATUS_SUCCESSを返さない一覧のトリップが発生するまで、ISR リスト全体を走査します。
 

これら 3 つのモードの詳細については、「 割り込み同期オブジェクト」を参照してください。

OutInterruptSyncOuterUnknown、および ResourceList パラメーターは、COM オブジェクトの参照カウント規則に従います。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム ユニバーサル
Header portcls.h (Portcls.h を含む)
Library Portcls.lib
IRQL PASSIVE_LEVEL

こちらもご覧ください

IInterruptSync

IResourceList

IResourceList::NumberOfEntriesOfType