Partager via


structure SERCX2_CONFIG (sercx.h)

La structure SERCX2_CONFIG contient des informations de configuration pour la version 2 de l’extension de framework série (SerCx2).

Syntaxe

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;

Membres

Size

Taille, en octets, de cette structure. La méthode SerCx2InitializeDevice utilise ce membre pour déterminer la version de la structure utilisée par l’appelant. La taille de cette structure peut changer dans les futures versions du fichier d’en-tête Sercx.h.

EvtSerCx2FileOpen

Pointeur vers la fonction de rappel d’événement evtSerCx2FileOpen implémentée par le pilote. Ce membre est facultatif et peut être défini sur NULL pour indiquer que le pilote n’implémente pas la fonction. Toutefois, un pilote qui implémente cette fonction doit également implémenter une fonction EvtSerCx2FileClose.

EvtSerCx2FileClose

Pointeur vers la fonction de rappel d’événement evtSerCx2FileClose implémentée par le pilote. Ce membre est facultatif et peut être défini sur NULL pour indiquer que le pilote n’implémente pas la fonction.

EvtSerCx2SetWaitMask

Pointeur vers la fonction de rappel d’événement implémentée par le pilote EvtSerCx2SetWaitmask. Ce membre doit pointer vers une fonction valide.

EvtSerCx2PurgeFifos

Pointeur vers la fonction de rappel d’événement implémentée par le pilote EvtSerCx2PurgeFifos. Ce membre doit pointer vers une fonction valide.

EvtSerCx2Control

Pointeur vers la fonction de rappel d’événement implémentée par le pilote EvtSerCx2Control. Ce membre doit pointer vers une fonction valide.

EvtSerCx2ApplyConfig

Pointeur vers la fonction de rappel d’événements EvtSerCx2ApplyConfig implémentée par le pilote. Ce membre doit pointer vers une fonction valide.

EvtSerCx2SelectNextReceiveTransactionType

Pointeur vers la fonction de rappel d’événement EvtSerCx2SelectNextReceiveTransactionType. Ce membre est facultatif et peut être défini sur NULL pour indiquer que le pilote n’implémente pas la fonction.

EvtSerCx2SelectNextTransmitTransactionType

Pointeur vers la fonction de rappel d’événement EvtSerCx2SelectNextTransmitTransactionType. Ce membre est facultatif et peut être défini sur NULL pour indiquer que le pilote n’implémente pas la fonction.

RequestAttributes

Pointeur vers une structure WDF_OBJECT_ATTRIBUTES qui décrit les attributs à affecter aux objets de requête d’infrastructure transmis par SerCx2 au pilote du contrôleur série. Avant d’appeler la méthode SerCx2InitializeDevice, l’appelant doit appeler la fonction WDF_OBJECT_ATTRIBUTES_INIT pour initialiser la structure. Ce membre est facultatif et peut être spécifié en tant que WDF_NO_OBJECT_ATTRIBUTES si le pilote du contrôleur série n’a pas besoin d’affecter des attributs à l’objet. Pour plus d’informations, consultez Remarques.

Remarques

La méthode SerCx2InitializeDevice accepte un pointeur vers une structure SERCX2_CONFIG en tant que paramètre d’entrée. Avant d’appeler SerCx2InitializeDevice, appelez la fonction SERCX2_CONFIG_INIT pour initialiser cette structure.

Si le RequestAttributes membre pointe vers une structure WDF_OBJECT_ATTRIBUTES, l’appelant ne doit pas remplacer les valeurs que la fonction d’initialisation WDF_OBJECT_ATTRIBUTES_INIT écrit dans leParentObject , ExecutionLevelet SynchronizationScope membres de cette structure.

Un pilote peut avoir besoin de stocker des informations dans des zones de contexte dans les objets de demande d’infrastructure reçus par le pilote. En règle générale, le pilote appelle la méthode WdfDeviceInitSetRequestAttributes pour spécifier les attributs requis pour les objets de requête. Ces attributs incluent le nom et la taille de la zone de contexte dans chaque objet de requête. En outre, dans l’implémentation actuelle de SerCx2, un pilote de contrôleur série qui nécessite un contexte de requête doit spécifier ces mêmes attributs dans la RequestAttributes membre de la structure SERCX2_CONFIG que le pilote passe à SerCx2InitializeDevice. Autrement dit, le pilote doit spécifier deux fois les mêmes attributs de requête dans l’appel SerCx2InitializeDevice et dans l’appel WdfDeviceInitSetRequestAttributes. Pour plus d’informations, consultez transactions SerCx2 Custom-Receive Transactions et SerCx2 Custom-Transmit Transactions.

Un pilote qui n’a jamais besoin d’un contexte de requête n’a pas besoin d’appeler WdfDeviceInitSetRequestAttributeset peut définir le RequestAttributes membre de la structure SERCX2_CONFIG sur WDF_NO_OBJECT_ATTRIBUTES.

Exigences

Exigence Valeur
client minimum pris en charge Prise en charge à partir de Windows 8.1.
d’en-tête sercx.h

Voir aussi

EvtSerCx2ApplyConfig

EvtSerCx2Control

EvtSerCx2FileClose

EvtSerCx2FileOpen

EvtSerCx2PurgeFifos

EvtSerCx2SelectNextReceiveTransactionType

EvtSerCx2SelectNextTransmitTransactionType

EvtSerCx2SetWaitmask

SERCX2_CONFIG_INIT

SerCx2InitializeDevice

WDF_OBJECT_ATTRIBUTES

WDF_OBJECT_ATTRIBUTES_INIT