Обработчики объектов SerCx2
В этом разделе описываются типы дескрипторов объектов, которые специально определены для версии 2 расширения последовательной платформы (SerCx2).
Интерфейс драйвера устройства SerCx2 (DDI) использует эти типы дескрипторов для ссылки на объекты с функциями и возможностями, характерными для SerCx2.
Кроме того, SerCx2 DDI использует два универсальных типа дескрипторов объектов, WDFDEVICE и WDFREQUEST, которые определены платформой Kernel-Mode Driver Framework (KMDF).
Дополнительные сведения о типах дескрипторов платформы см. в разделе Сводка объектов платформы.
В этом разделе описываются следующие дескрипторы объектов:
- Обработчик объекта SERCX2CUSTOMRECEIVE
- Обработчик объекта SERCX2CUSTOMRECEIVETRANSACTION
- Обработчик объекта SERCX2CUSTOMTRANSMIT
- Обработчик объекта SERCX2CUSTOMTRANSMITTRANSACTION
- Дескриптор объекта SERCX2PIORECEIVE
- Обработчик объекта SERCX2PIOTRANSMIT
- Обработчик объекта SERCX2SYSTEMDMARECEIVE
- Обработчик объекта SERCX2SYSTEMDMATRANSMIT
Заголовок: 2.0\Sercx.h
Обработчик объекта SERCX2CUSTOMRECEIVE
Дескриптор объекта SERCX2CUSTOMRECEIVE — это непрозрачная ссылка на объект пользовательского получения в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2CustomReceiveCreate создает объект пользовательского получения. SerCx2 использует этот объект для управления транзакциями ввода-вывода, которые используют пользовательский механизм передачи данных для чтения данных из последовательного контроллера. Этот объект непрозрачн для драйверов последовательного контроллера.
SerCx2CustomReceiveCreate предоставляет в качестве выходного параметра дескриптор SERCX2CUSTOMRECEIVE только что созданному объекту пользовательского получения.
SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих вызовах методов SerCx2 и функций обратного вызова событий.
После того как SerCx2CustomReceiveCreate создаст объект пользовательского получения, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект пользовательского получения автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект пользовательского получения путем вызова метода, например WdfObjectDelete.
Драйвер последовательного контроллера может, как вариант, создать объект пользовательского приема, но может создать не более одного такого объекта.
Драйвер может создать этот объект только при следующих условиях:
- Драйвер ранее создал объект получения PIO.
- Драйвер не создал объект получения system-DMA.
Дополнительные сведения об объектах pio-receive см. в разделе Обработчик объектов SERCX2PIORECEIVE.
Дополнительные сведения об объектах получения system-DMA см. в разделе Обработчик объектов SERCX2SYSTEMDMARECEIVE.
Обработчик объекта SERCX2CUSTOMRECEIVETRANSACTION
Дескриптор объекта SERCX2CUSTOMRECEIVETRANSACTION — это непрозрачная ссылка на объект custom-receive-transaction в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2CustomReceiveTransactionCreate создает объект custom-receive-transaction. SerCx2 использует этот объект для управления транзакциями ввода-вывода, которые используют пользовательский механизм передачи данных для чтения данных, полученных последовательным контроллером.
Этот объект непрозрачн для драйверов последовательного контроллера.
SerCx2CustomReceiveTransactionCreate предоставляет в качестве выходного параметра дескриптор SERCX2CUSTOMRECEIVETRANSACTION только что созданному объекту custom-receive-transaction.
SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих транзакциях пользовательского получения.
Дополнительные сведения см. в разделе SerCx2 Custom-Receive Transactions.
После того как SerCx2CustomReceiveTransactionCreate создаст объект custom-receive-transaction, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера.
Объект custom-receive-transaction автоматически удаляется при удалении объекта устройства.
Драйвер последовательного контроллера не должен пытаться удалить объект custom-receive-transaction, вызвав такой метод, как WdfObjectDelete.
Драйвер последовательного контроллера может, как вариант, создать объект custom-receive-transaction, но может создать не более одного такого объекта.
Драйвер может создать этот объект только при следующих условиях:</wdcml:p>
- Драйвер ранее создал объект получения PIO.
- Драйвер ранее создал объект пользовательского получения.
Дополнительные сведения об объектах pio-receive см. в разделе Обработчик объектов SERCX2PIORECEIVE. Дополнительные сведения о пользовательских объектах получения см. в разделе ОБРАБОТЧИК объектов SERCX2CUSTOMRECEIVE.
Несмотря на аналогичные сроки существования объектов custom-receive и custom-receive-transaction, они определяются как отдельные типы объектов (а не объединяются в один тип) для поддержки возможного расширения интерфейса драйвера устройства SerCx2 в будущем.
Обработчик объекта SERCX2CUSTOMTRANSMIT
Дескриптор объекта SERCX2CUSTOMTRANSMIT — это непрозрачная ссылка на объект пользовательской передачи в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2CustomTransmitCreate создает объект custom-transmit.h SerCx2 использует этот объект для управления транзакциями ввода-вывода, которые записывают данные в последовательный контроллер. Этот объект непрозрачн для драйверов последовательного контроллера.
SerCx2CustomTransmitCreate предоставляет в качестве выходного параметра дескриптор SERCX2CUSTOMTRANSMIT только что созданному объекту пользовательской передачи. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих вызовах методов SerCx2 и функций обратного вызова событий.
После того как SerCx2CustomTransmitCreate создаст объект пользовательской передачи, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера.
Объект пользовательской передачи автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект пользовательской передачи путем вызова метода , например WdfObjectDelete.
Драйвер последовательного контроллера может, как вариант, создать объект пользовательской передачи, но может создать не более одного такого объекта.
Драйвер может создать этот объект только при следующих условиях:
- Драйвер ранее создал объект pio-передачи.
- Драйвер не создал объект передачи system-DMA.
Дополнительные сведения об объектах PIO-передачи см. в разделе Обработчик объектов SERCX2PIOTRANSMIT. Дополнительные сведения об объектах system-DMA-transmit см. в разделе Обработчик объектов SERCX2SYSTEMDMATRANSMIT.
Обработчик объекта SERCX2CUSTOMTRANSMITTRANSACTION
Дескриптор объекта SERCX2CUSTOMTRANSMITTRANSACTION — это непрозрачная ссылка на объект custom-transmit-transaction в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2CustomTransmitTransmitTransactionCreate создает объект custom-transmit-transaction. SerCx2 использует этот объект для управления транзакциями ввода-вывода, которые используют пользовательский механизм передачи данных для записи данных в последовательный контроллер. Этот объект непрозрачн для драйверов последовательного контроллера.
SerCx2CustomTransmitTransactionCreate предоставляет в качестве выходного параметра дескриптор SERCX2CUSTOMTRANSMITTRANSACTION только что созданному объекту custom-transmit-transaction. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих пользовательских транзакциях передачи.
Дополнительные сведения см. в разделе SerCx2 Custom-Transmit Transactions.
После того как SerCx2CustomTransmitTransactionCreate создаст объект custom-transmit-transaction, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект custom-transmit-transaction автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект custom-transmit-transaction путем вызова метода, например WdfObjectDelete.
Драйвер последовательного контроллера может, как вариант, создать объект пользовательской передачи, но может создать не более одного такого объекта. Драйвер может создать этот объект только при следующих условиях:
- Драйвер ранее создал объект pio-передачи.
- Драйвер не создал объект передачи system-DMA.
Дополнительные сведения об объектах PIO-передачи см. в разделе Обработчик объектов SERCX2PIOTRANSMIT. Дополнительные сведения о пользовательских передаваемых объектах см. в разделе Обработчик объекта SERCX2CUSTOMTRANSMIT.
Несмотря на аналогичные сроки существования объектов custom-transmit и custom-transmit-transaction, они определяются как отдельные типы объектов (а не объединяются в один тип) для поддержки возможного расширения интерфейса драйвера устройства SerCx2 в будущем.
Дескриптор объекта SERCX2PIORECEIVE
Дескриптор объекта SERCX2PIORECEIVE — это непрозрачная ссылка на объект получения PIO в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2PioReceiveCreate создает объект получения PIO. SerCx2 использует объект для управления запрограммированных транзакциями ввода-вывода ( PIO), которые считывают данные из последовательного контроллера. Этот объект непрозрачн для драйверов последовательного контроллера. предоставляет в качестве выходного параметра дескриптор SERCX2PIORECEIVE только что созданному объекту pio-receive. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих транзакциях получения персональных данных.
Дополнительные сведения см. в разделе SerCx2 PIO-Receive Transactions. После того как SerCx2PioReceiveCreate создаст объект получения PIO, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект pio-receive автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект pio-receive путем вызова метода, такого как WdfObjectDelete.
Драйвер последовательного контроллера должен создать один и только один объект получения PIO. Драйвер должен создать этот объект перед созданием объекта получения system-DMA или объекта custom-receive. Дополнительные сведения об объектах получения system-DMA см. в разделе Обработчик объектов SERCX2SYSTEMDMARECEIVE. Дополнительные сведения о пользовательских объектах получения см. в разделе ОБРАБОТЧИК объектов SERCX2CUSTOMRECEIVE.
Обработчик объекта SERCX2PIOTRANSMIT
Дескриптор объекта SERCX2PIOTRANSMIT — это непрозрачная ссылка на объект PIO-передачи в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2PioTransmitCreate создает объект передачи PIO. SerCx2 использует этот объект для управления транзакциями ввода-вывода, которые используют запрограммированные операции ввода-вывода (PIO) для записи данных в последовательный контроллер. Этот объект непрозрачн для драйверов последовательного контроллера. SerCx2PioTransmitCreate предоставляет в качестве выходного параметра дескриптор SERCX2PIOTRANSMIT только что созданному объекту PIO-передачи. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих транзакциях piO-передачи. Дополнительные сведения см. в разделе SerCx2 PIO-Transmit Transactions. После того как SerCx2PioTransmitCreate создаст объект PIO-передачи, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект PIO-передачи автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект piO-передачи путем вызова метода , например WdfObjectDelete.
Драйвер последовательного контроллера должен создать один и только один объект piO-передачи. Драйвер должен создать этот объект перед созданием объекта system-DMA-transmit или пользовательского объекта передачи. Дополнительные сведения об объектах system-DMA-transfer см. в разделе Обработчик объектов SERCX2SYSTEMDMATRANSMIT. Дополнительные сведения об объектах пользовательской передачи см. в разделе Обработчик объектов SERCX2CUSTOMTRANSMIT.
Обработчик объекта SERCX2SYSTEMDMARECEIVE
Дескриптор объекта SERCX2SYSTEMDMARECEIVE — это непрозрачная ссылка на объект system-DMA-receive в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2SystemDmaReceiveCreate создает объект system-DMA-receive. SerCx2 использует этот объект для управления транзакциями DMA системы, которые считывают данные из последовательного контроллера. Этот объект непрозрачн для драйверов последовательного контроллера. SerCx2SystemDmaReceiveCreate предоставляет в качестве выходного параметра дескриптор SERCX2SYSTEMDMARECEIVE только что созданному объекту system-DMA-receive. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих транзакциях получения system-DMA. Дополнительные сведения см. в разделе SerCx2 System-DMA-Receive Transactions.
После того как SerCx2SystemDmaReceiveCreate создаст объект system-DMA-receive, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект получения system-DMA автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера может, как вариант, создать объект получения system-DMA, но может создать не более одного такого объекта. Драйвер может создать этот объект только при следующих условиях:
- Драйвер ранее создал объект получения PIO.
- Драйвер не создал объект пользовательского получения.
Дополнительные сведения об объектах, получающих PIO, см. в разделе Обработчик объектов SERCX2PIORECEIVE. Дополнительные сведения о пользовательских объектах получения см. в разделе SERCX2CUSTOMRECEIVE Object Handle.
Обработчик объекта SERCX2SYSTEMDMATRANSMIT
Дескриптор объекта SERCX2SYSTEMDMATRANSMIT — это непрозрачная ссылка на объект system-DMA-transfer в версии 2 расширения последовательной платформы (SerCx2).
Метод SerCx2SystemDmaTransmitCreate создает объект system-DMA-transfer. SerCx2 использует этот объект для управления транзакциями DMA системы, которые записывают данные в последовательный контроллер. Этот объект непрозрачн для драйверов последовательного контроллера. SerCx2SystemDmaTransmitCreate предоставляет в качестве выходного параметра дескриптор SERCX2SYSTEMDMATRANSMIT только что созданному объекту system-DMA-transfer. SerCx2 и драйвер последовательного контроллера используют этот дескриптор для ссылки на объект в последующих транзакциях system-DMA-transmit. Дополнительные сведения см. в разделе SerCx2 System-DMA-Transmit Transactions.
После того как SerCx2SystemDmaTransmitCreate создаст объект system-DMA-transfer, этот объект существует в течение времени существования объекта устройства платформы, представляющего устройство последовательного контроллера. Объект system-DMA-transmit автоматически удаляется при удалении объекта устройства. Драйвер последовательного контроллера не должен пытаться удалить объект system-DMA-transmit путем вызова метода, например WdfObjectDelete.
Драйвер последовательного контроллера может, как вариант, создать объект system-DMA-передачи, но может создать не более одного такого объекта. Драйвер может создать этот объект только при следующих условиях:</wdcml:p>
- Драйвер ранее создал объект pio-передачи.
- Драйвер не создал объект пользовательской передачи.
Дополнительные сведения об объектах PIO-передачи см. в разделе Обработчик объектов SERCX2PIOTRANSMIT. Дополнительные сведения об объектах пользовательской передачи см. в разделе Обработчик объектов SERCX2CUSTOMTRANSMIT.
Связанные темы
Транзакции Custom-Receive SerCx2
Транзакции Custom-Transmit SerCx2
Транзакции PIO-Transmit SerCx2
Транзакции получения системы DMA SerCx2
Транзакции Передачи Системы DMA-SerCx2
SerCx2CustomReceiveTransactionCreate