EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION función de devolución de llamada (sercx.h)
La función de devolución de llamada de evento EvtSerCx2PioTransmitCancelReadyNotification llama a la versión 2 de la extensión del marco de serie (SerCx2) para cancelar una notificación lista que SerCx2 habilitó en una llamada anterior a la EvtSerCx2PioTransmitEnableReadyNotification función de devolución de llamada de evento.
Sintaxis
EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION EvtSercx2PioTransmitCancelReadyNotification;
BOOLEAN EvtSercx2PioTransmitCancelReadyNotification(
[in] SERCX2PIOTRANSMIT PioTransmit
)
{...}
Parámetros
[in] PioTransmit
Identificador de SERCX2PIOTRANSMIT a un objeto PIO-transmit. El controlador de controlador serie llamó anteriormente al método SerCx2PioTransmitCreate para crear este objeto.
Valor devuelto
La función
La función devuelve FALSE si el controlador ya ha llamado a SerCx2PioTransmitReady, o está a punto de llamar a este método.
Observaciones
El controlador de controlador serie debe implementar esta función. El controlador registra la función en el serCx2PioTransmitCreate llamada que crea el objeto PIO-transmit.
Si la solicitud de escritura asociada agota el tiempo de espera o se cancela mientras está habilitada una notificación lista, SerCx2 llama a la función EvtSerCx2PioTransmitCancelReadyNotification para cancelar la notificación pendiente. Si esta llamada devuelve FALSE, SerCx2 espera que el controlador del controlador serie llame a SerCx2PioTransmitReady; solo después de que esta llamada llame a SerCx2 a la EvtSerCx2PioTransmitCleanupTransaction función de devolución de llamada de eventos, si se implementa y complete la solicitud.
Para cancelar una notificación lista habilitada anteriormente, la función EvtSerCx2PioTransmitCancelReadyNotification normalmente deshabilita la interrupción en el controlador serie que indica que la transmisión FIFO está lista para aceptar más datos. SerCx2 habilitó esta interrupción en una llamada anterior a la función EvtSerCx2PioTransmitEnableReadyNotification.
Para obtener más información, vea SerCx2 PIO-Transmit Transactions.
Ejemplos
Para definir un función de devolución de llamada EvtSerCx2PioTransmitCancelReadyNotification, primero debe proporcionar una declaración de función que identifique el tipo de función que está definiendo. Windows proporciona un conjunto de tipos de función de devolución de llamada para controladores. Declarar una función mediante los tipos de función de devolución de llamada ayuda a Análisis de código para controladores, comprobador de controladores estáticos (SDV) y otras herramientas de comprobación encuentran errores y es un requisito para escribir controladores para el sistema operativo Windows.
Por ejemplo, para definir un EvtSerCx2PioTransmitCancelReadyNotification función de devolución de llamada denominada MyPioTransmitCancelReadyNotification
, use el tipo de función EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION, como se muestra en este ejemplo de código:
EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION MyPioTransmitCancelReadyNotification;
A continuación, implemente la función de devolución de llamada de la siguiente manera:
_Use_decl_annotations_
BOOLEAN
MyPioTransmitCancelReadyNotification(
SERCX2PIOTRANSMIT PioTransmit
)
{...}
El tipo de función EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION se define en el archivo de encabezado Sercx.h. Para identificar con más precisión los errores al ejecutar las herramientas de análisis de código, asegúrese de agregar la anotación Use_decl_annotations a la definición de función. La anotación Use_decl_annotations garantiza que se usen las anotaciones que se aplican al tipo de función EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION en el archivo de encabezado. Para obtener más información sobre los requisitos de las declaraciones de función, consulte Declaración de funciones mediante tipos de rol de función para controladores kmDF. Para obtener más información sobre Use_decl_annotations, vea Anotación del comportamiento de la función.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 8.1. |
de la plataforma de destino de |
Escritorio |
encabezado de |
sercx.h |
irQL | Se llama a irQL <= DISPATCH_LEVEL. |