SERCX_CONFIG structure (sercx.h)

The SERCX_CONFIG structure contains configuration information for the serial framework extension (SerCx).

Syntax

typedef struct _SERCX_CONFIG {
  ULONG                     Size;
  WDF_TRI_STATE             PowerManaged;
  PFN_SERCX_FILEOPEN        EvtSerCxFileOpen;
  PFN_SERCX_FILECLOSE       EvtSerCxFileClose;
  PFN_SERCX_FILECLEANUP     EvtSerCxFileCleanup;
  PFN_SERCX_TRANSMIT        EvtSerCxTransmit;
  PFN_SERCX_RECEIVE         EvtSerCxReceive;
  PFN_SERCX_WAITMASK        EvtSerCxWaitmask;
  PFN_SERCX_PURGE           EvtSerCxPurge;
  PFN_SERCX_CONTROL         EvtSerCxControl;
  PFN_SERCX_APPLY_CONFIG    EvtSerCxApplyConfig;
  PFN_SERCX_TRANSMIT_CANCEL EvtSerCxTransmitCancel;
  PFN_SERCX_RECEIVE_CANCEL  EvtSerCxReceiveCancel;
} SERCX_CONFIG, *PSERCX_CONFIG;

Members

Size

The size, in bytes, of this structure. The SerCxInitialize method uses this member to determine which version of the structure the caller is using. The size of this structure might change in future versions of the Sercx.h header file.

PowerManaged

Whether the controller queue should be power-managed. If set to WdfTrue, the controller queue should be power-managed. If set to WdfFalse, the controller queue not be power-managed. If set to WdfDefault, the controller queue should be power-managed unless the driver calls the WdfFdoInitSetFilter method. For more information, see the description of the PowerManaged member in WDF_IO_QUEUE_CONFIG.

EvtSerCxFileOpen

A pointer to the controller driver's EvtSerCxFileOpen callback function. This member is optional and can be set to NULL.

EvtSerCxFileClose

A pointer to the controller driver's EvtSerCxFileClose callback function. This member is optional and can be set to NULL.

EvtSerCxFileCleanup

A pointer to the controller driver's EvtSerCxFileCleanup callback function. This member is optional and can be set to NULL.

EvtSerCxTransmit

A pointer to the controller driver's EvtSerCxTransmit callback function. This member is required to point to a valid callback function.

EvtSerCxReceive

A pointer to the controller driver's EvtSerCxReceive callback function. This member is required to point to a valid callback function.

EvtSerCxWaitmask

A pointer to the controller driver's EvtSerCxWaitmask callback function. This member is required to point to a valid callback function.

EvtSerCxPurge

A pointer to the controller driver's EvtSerCxPurge callback function. This member is optional and can be set to NULL.

EvtSerCxControl

A pointer to the controller driver's EvtSerCxControl callback function. This member is required to point to a valid callback function.

EvtSerCxApplyConfig

A pointer to the controller driver's EvtSerCxApplyConfig callback function. This member is required to point to a valid callback function.

EvtSerCxTransmitCancel

A pointer to the controller driver's EvtSerCxTransmitCancel callback function. This member is optional and can be set to NULL.

EvtSerCxReceiveCancel

A pointer to the controller driver's EvtSerCxReceiveCancel callback function. This member is optional and can be set to NULL.

Remarks

Before this structure is passed to the SerCxInitialize method, it must be initialized by the SERCX_CONFIG_INIT function, and then modified by the controller driver to set the callback function pointers and the PowerManaged member.

Requirements

Requirement Value
Minimum supported client Supported starting with Windows 8.
Header sercx.h

See also

EvtSerCxApplyConfig

EvtSerCxControl

EvtSerCxFileCleanup

EvtSerCxFileClose

EvtSerCxFileOpen

EvtSerCxPurge

EvtSerCxReceive

EvtSerCxReceiveCancel

EvtSerCxTransmit

EvtSerCxTransmitCancel

EvtSerCxWaitmask

SERCX_CONFIG_INIT

SerCxInitialize

WDF_IO_QUEUE_CONFIG

WdfFdoInitSetFilter