структура SERCX_BUFFER_DESCRIPTOR (sercx.h)
Структура SERCX_BUFFER_DESCRIPTOR описывает буфер данных для операции получения или передачи.
Синтаксис
typedef struct SERCX_BUFFER_DESCRIPTOR {
USHORT Size;
PUCHAR Buffer;
ULONG Length;
} SERCX_BUFFER_DESCRIPTOR, *PSERCX_BUFFER_DESCRIPTOR;
Члены
Size
Размер данной структуры (в байтах). Методы SerCxRetrieveReceiveBuffer и SerCxRetrieveTransmitBuffer используют этот элемент, чтобы определить, какую версию структуры использует вызывающий объект. Размер этой структуры может измениться в будущих версиях файла заголовка Sercx.h.
Buffer
Адрес виртуальной памяти буфера. Память для буфера не погашена.
Length
Количество байтов, доступных в буфере. Этот размер определяет максимальное количество байтов, которые могут быть переданы операцией получения или передачи.
Комментарии
Драйвер последовательного контроллера использует сведения в этой структуре, чтобы определить, откуда в памяти следует считывать данные во время операции получения, а где в памяти записывать данные во время операции передачи.
В любой момент времени может быть не более одного допустимого буфера приема и одного допустимого буфера передачи. Драйвер контроллера вызывает метод SerCxRetrieveReceiveBuffer , чтобы получить буфер приема, и вызывает метод SerCxRetrieveTransmitBuffer для получения буфера передачи. Оба метода копируют описания буфера в структуры, выделенные вызывающим объектом SERCX_BUFFER_DESCRIPTOR . Последующий вызов одного из этих методов делает недействительным ранее выданный дескриптор для буфера приема или буфера передачи соответственно. Вызывающий объект не должен обращаться к буферу, описанному дескриптором буфера, который больше не является допустимым.
Буферы, полученные при последовательных вызовах SerCxRetrieveReceiveBuffer или SerCxRetrieveTransmitBuffer , не гарантируются как непрерывные.
Драйвер контроллера должен вызвать функцию SERCX_BUFFER_DESCRIPTOR_INIT для инициализации структуры SERCX_BUFFER_DESCRIPTOR перед передачей структуры в метод SerCxRetrieveReceiveBuffer или SerCxRetrieveTransmitBuffer . После инициализации дескриптора буфера его можно использовать повторно без повторной инициализации.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается начиная с Windows 8. |
Верхняя часть | sercx.h |