Compartir a través de


estructura SERCX2_CONFIG (sercx.h)

La estructura SERCX2_CONFIG contiene información de configuración de la versión 2 de la extensión de marco serie (SerCx2).

Sintaxis

typedef struct _SERCX2_CONFIG {
  ULONG                                            Size;
  PFN_SERCX2_FILEOPEN                              EvtSerCx2FileOpen;
  PFN_SERCX2_FILECLOSE                             EvtSerCx2FileClose;
  PFN_SERCX2_SET_WAIT_MASK                         EvtSerCx2SetWaitMask;
  PFN_SERCX2_PURGE_FIFOS                           EvtSerCx2PurgeFifos;
  PFN_SERCX2_CONTROL                               EvtSerCx2Control;
  PFN_SERCX2_APPLY_CONFIG                          EvtSerCx2ApplyConfig;
  PFN_SERCX2_SELECT_NEXT_RECEIVE_TRANSACTION_TYPE  EvtSerCx2SelectNextReceiveTransactionType;
  PFN_SERCX2_SELECT_NEXT_TRANSMIT_TRANSACTION_TYPE EvtSerCx2SelectNextTransmitTransactionType;
  PWDF_OBJECT_ATTRIBUTES                           RequestAttributes;
} SERCX2_CONFIG, *PSERCX2_CONFIG;

Miembros

Size

Tamaño, en bytes, de esta estructura. El método SerCx2InitializeDevice usa este miembro para determinar qué versión de la estructura usa el autor de la llamada. El tamaño de esta estructura puede cambiar en versiones futuras del archivo de encabezado Sercx.h.

EvtSerCx2FileOpen

Puntero a la función de devolución de llamada de eventos EvtSerCx2FileOpen. Este miembro es opcional y se puede establecer en NULL para indicar que el controlador no implementa la función. Sin embargo, un controlador que implementa esta función también debe implementar una función EvtSerCx2FileClose.

EvtSerCx2FileClose

Puntero a la función de devolución de llamada de eventos EvtSerCx2FileClose. Este miembro es opcional y se puede establecer en NULL para indicar que el controlador no implementa la función.

EvtSerCx2SetWaitMask

Puntero al controlador implementado EvtSerCx2SetWaitmask función de devolución de llamada de eventos. Este miembro debe apuntar a una función válida.

EvtSerCx2PurgeFifos

Puntero al controlador implementado EvtSerCx2PurgeFifos función de devolución de llamada de eventos. Este miembro debe apuntar a una función válida.

EvtSerCx2Control

Puntero a la función de devolución de llamada de eventos EvtSerCx2 Control implementado por el controlador. Este miembro debe apuntar a una función válida.

EvtSerCx2ApplyConfig

Puntero a la función de devolución de llamada de eventos EvtSerCx2ApplyConfig controlador. Este miembro debe apuntar a una función válida.

EvtSerCx2SelectNextReceiveTransactionType

Puntero al controlador implementado evtSerCx2SelectNextReceiveTransactionType función de devolución de llamada de eventos. Este miembro es opcional y se puede establecer en NULL para indicar que el controlador no implementa la función.

EvtSerCx2SelectNextTransmitTransactionType

Puntero al controlador implementado Función de devolución de llamada de eventos EvtSerCx2SelectNextTransmitTransactionType. Este miembro es opcional y se puede establecer en NULL para indicar que el controlador no implementa la función.

RequestAttributes

Puntero a una estructura de WDF_OBJECT_ATTRIBUTES que describe los atributos que se van a asignar a los objetos de solicitud del marco que SerCx2 pasa al controlador del controlador serie. Antes de llamar al método SerCx2InitializeDevice, el llamador debe llamar a la función WDF_OBJECT_ATTRIBUTES_INIT para inicializar la estructura. Este miembro es opcional y se puede especificar como WDF_NO_OBJECT_ATTRIBUTES si el controlador del controlador serie no necesita asignar atributos al objeto. Para obtener más información, vea Comentarios.

Observaciones

El método SerCx2InitializeDevice acepta un puntero a una estructura de SERCX2_CONFIG como parámetro de entrada. Antes de llamar a SerCx2InitializeDevice, llame a la función SERCX2_CONFIG_INIT para inicializar esta estructura.

Si el requestAttributes miembro apunta a una estructura de WDF_OBJECT_ATTRIBUTES, el autor de la llamada no debe sobrescribir los valores que escribe la función de inicialización de WDF_OBJECT_ATTRIBUTES_INIT en elParentObject , ExecutionLevely SynchronizationScope miembros de esta estructura.

Es posible que un controlador necesite almacenar información en áreas de contexto en los objetos de solicitud del marco que recibe el controlador. Normalmente, el controlador llama al método WdfDeviceInitSetRequestAttributes para especificar los atributos necesarios para los objetos de solicitud. Estos atributos incluyen el nombre y el tamaño del área de contexto en cada objeto de solicitud. Además, en la implementación actual de SerCx2, un controlador de controlador serie que requiere un contexto de solicitud debe especificar estos mismos atributos en el requestAttributes miembro de la estructura de SERCX2_CONFIG que el controlador pasa a SerCx2InitializeDevice. Es decir, el controlador debe especificar dos veces los mismos atributos de solicitud, en la llamada de SerCx2InitializeDeviceDevice y en la llamada WdfDeviceInitSetRequestAttributes. Para obtener más información, vea SerCx2 Custom-Receive Transactions y SerCx2 Custom-Transmit Transactions.

Un controlador que nunca necesita un contexto de solicitud no necesita llamar a WdfDeviceInitSetRequestAttributesy puede establecer el miembro RequestAttributes de la estructura SERCX2_CONFIG en WDF_NO_OBJECT_ATTRIBUTES.

Requisitos

Requisito Valor
cliente mínimo admitido Se admite a partir de Windows 8.1.
encabezado de sercx.h

Consulte también

EvtSerCx2ApplyConfig

EvtSerCx2Control

EvtSerCx2FileClose

EvtSerCx2FileOpen

EvtSerCx2PurgeFifos

EvtSerCx2SelectNextReceiveTransactionType

EvtSerCx2SelectNextTransmitTransactionType

EvtSerCx2SetWaitmask

SERCX2_CONFIG_INIT

serCx2InitializeDevice

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT