EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION回呼函式 (sercx.h)
EvtSerCx2PioTransmitCancelReadyNotification 事件回呼函式是由序列架構延伸模組 (SerCx2) 第 2 版呼叫,以取消先前呼叫 EvtSerCx2PioTransmitEnableReadyNotification 事件回呼函式中啟用的就緒通知。
語法
EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION EvtSercx2PioTransmitCancelReadyNotification;
BOOLEAN EvtSercx2PioTransmitCancelReadyNotification(
[in] SERCX2PIOTRANSMIT PioTransmit
)
{...}
參數
[in] PioTransmit
PIO 傳輸物件的 SERCX2PIOTRANSMIT 句柄。 序列控制器驅動程式先前稱為 SerCx2PioTransmitCreate 方法來建立這個物件。
傳回值
EvtSerCx2PioTransmitCancelReadyNotification 函式會傳回 true true 如果已順利停用通知,而且序列控制器驅動程式可以保證不會呼叫 SerCx2PioTransmitReady 方法。
如果驅動程式已呼叫 SerCx2PioTransmitReady,或即將呼叫此方法,則函式會傳回 false。
言論
您的序列控制器驅動程序必須實作此函式。 驅動程式會在建立 PIO 傳輸物件的 SerCx2PioTransmitCreate 呼叫中註冊函式。
如果相關聯的寫入要求在啟用就緒通知時逾時或取消,SerCx2 會呼叫 EvtSerCx2PioTransmitCancelReadyNotification 函式來取消擱置的通知。 如果此呼叫傳回 FALSE,SerCx2 預期序列控制器驅動程式會呼叫 SerCx2PioTransmitReady;只有在此呼叫之後,SerCx2 才會呼叫 EvtSerCx2PioTransmitCleanupTransaction 事件回呼函式,如果已實作,並完成要求。
若要取消先前啟用的就緒通知,EvtSerCx2PioTransmitCancelReadyNotification 函式通常會停用序列控制器中的中斷,指出傳輸 FIFO 已準備好接受更多數據。 SerCx2 在先前呼叫 EvtSerCx2PioTransmitEnableReadyNotification 函式中啟用此中斷。
如需詳細資訊,請參閱 SerCx2 PIO-Transmit Transactions。
例子
若要定義 EvtSerCx2PioTransmitCancelReadyNotification 回呼函式,您必須先提供函式宣告,以識別您要定義的回呼函式類型。 Windows 提供一組驅動程式的回呼函式類型。 使用回呼函式類型宣告函式有助於 驅動程式的程式代碼分析、靜態驅動程式驗證器 (SDV)和其他驗證工具尋找錯誤,而且是撰寫 Windows 操作系統驅動程式的需求。
例如,若要定義名為 MyPioTransmitCancelReadyNotification
的 EvtSerCx2PioTransmitCancelReadyNotification 回呼函式,請使用 EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION 函式類型,如下列程式代碼範例所示:
EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION MyPioTransmitCancelReadyNotification;
然後,實作回呼函式,如下所示:
_Use_decl_annotations_
BOOLEAN
MyPioTransmitCancelReadyNotification(
SERCX2PIOTRANSMIT PioTransmit
)
{...}
EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION 函式類型定義於 Sercx.h 頭檔中。 若要在執行程式代碼分析工具時更準確地識別錯誤,請務必將 Use_decl_annotations 批註新增至函式定義。 Use_decl_annotations 批注可確保會使用套用至頭檔中 EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION 函式類型的批注。 如需函式宣告需求的詳細資訊,請參閱 使用 KMDF 驅動程式的函式角色類型來宣告函式。 如需 Use_decl_annotations的詳細資訊,請參閱 批注函式行為。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 8.1 開始提供。 |
目標平臺 | 桌面 |
標頭 | sercx.h |
IRQL | 在 IRQL <= DISPATCH_LEVEL 呼叫。 |