Поделиться через


структура RECEIVE_TOKEN_INFORMATION_HEADER (scsi.h)

Структура RECEIVE_TOKEN_INFORMATION_HEADER содержит сведения, возвращаемые как состояние из операции передачи данных разгрузки.

Синтаксис

typedef struct {
  UCHAR AvailableData[4];
  UCHAR ResponseToServiceAction : 5;
  UCHAR Reserved1 : 3;
  UCHAR OperationStatus : 7;
  UCHAR Reserved2 : 1;
  UCHAR OperationCounter[2];
  UCHAR EstimatedStatusUpdateDelay[4];
  UCHAR CompletionStatus;
  UCHAR SenseDataFieldLength;
  UCHAR SenseDataLength;
  UCHAR TransferCountUnits;
  UCHAR TransferCount[8];
  UCHAR SegmentsProcessed[2];
  UCHAR Reserved3[6];
  UCHAR SenseData[ANYSIZE_ARRAY];
} RECEIVE_TOKEN_INFORMATION_HEADER, *PRECEIVE_TOKEN_INFORMATION_HEADER;

Члены

AvailableData[4]

Объем данных, доступных в массиве SenseData и дополнительных сведений о результатах.

ResponseToServiceAction

Код ответа, указывающий действие команды, для которого предназначен ответ. Ниже приведены коды действий службы.

Ценность Значение
SERVICE_ACTION_POPULATE_TOKEN Сведения об ответе приведены для команды POPULATE TOKEN.
SERVICE_ACTION_WRITE_USING_TOKEN Сведения об ответе приведены для команды WRITE USING TOKEN.

Reserved1

Скрытный.

OperationStatus

Текущее состояние операции копирования. Состояние может быть одним из следующих значений.

Ценность Значение
0x01 Операция успешно завершена.
0x02 Операция завершилась неудачно.
0x04 Операция завершилась успешно, но инициатор копирования должен убедиться, что все данные были переданы.
0x10 Операция выполняется. Состояние переднего плана или фоновой операции неизвестно.
0x11 Операция выполняется на переднем плане.
0x12 Операция выполняется в фоновом режиме.
0x60 Операция была завершена. Возможно, с помощью существующего резервирования ресурсов.

Reserved2

Скрытный.

OperationCounter[2]

Количество команд, обработанных для текущей операции копирования.

EstimatedStatusUpdateDelay[4]

Рекомендуемое время (в миллисекундах), чтобы дождаться отправки следующей команды RECEIVE COPY STATUS для получения обновленных сведений о текущей операции копирования.

CompletionStatus

Код состояния SCSI для операции копирования команды.

SenseDataFieldLength

Длина (в байтах) всей области данных, доступной для смысле данных. Это значение всегда >= SenseDataLength.

SenseDataLength

Длина данных в байтах в SenseData.

TransferCountUnits

Единицы байтов, применяемые к TransferCount. Каждое расширение единицы является экспонентом в базовой версии 2. Значение умножения TRANSFER_COUNT_UNITS_KIBIBYTES, например, равно 1024, а не 1000. Определенные единицы приведены ниже.

Ценность Значение
TRANSFER_COUNT_UNITS_BYTES Количество передач в байтах.
TRANSFER_COUNT_UNITS_KIBIBYTES Число передач в килобайтах.
TRANSFER_COUNT_UNITS_MEBIBYTES Число передач находится в мегабайтах.
TRANSFER_COUNT_UNITS_GIBIBYTES Число передач в гигабайтах.
TRANSFER_COUNT_UNITS_TEBIBYTES Число передач находится в терабайтах.
TRANSFER_COUNT_UNITS_PEBIBYTES Число передач находится в петабайтах.
TRANSFER_COUNT_UNITS_EXBIBYTES Число передач находится в эксабайтах.
TRANSFER_COUNT_UNITS_NUMBER_BLOCKS Число передач не является экспонентом, а в единицах логического блока длины.

TransferCount[8]

Длина данных, передаваемых в операции. Тип единицы в TransferCountUnits применяется к этому значению, чтобы дать общее число байтов.

SegmentsProcessed[2]

Количество сегментов, обработанных для операции передачи данных. Сегменты — это единицы длины копирования, используемые внутри поставщика копирования устройства хранилища. В системах Windows это значение зарезервировано, а приложения должны игнорировать этот элемент.

Reserved3[6]

Скрытный.

SenseData[ANYSIZE_ARRAY]

Проверка данных, возвращаемых для операции копирования.

Замечания

Если RECEIVE_TOKEN_INFORMATION_HEADER используется для выполнения команды TOKEN ЗАПОЛНЕНИе, а команда успешно завершена, структура RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER также будет присутствовать после SenseData со смещением SenseDataFieldLength с начала массива SenseData. Структура RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER будет содержать маркер, созданный в виде представления данных (ROD) для параметров диапазона, отправленных с помощью команды.

Все многобайтовые значения находятся в формате big endian. Перед оценкой эти значения должны быть преобразованы в соответствие с конечным форматом текущей платформы.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 8.
заголовка scsi.h (include SCSI.h, Minitape.h, Storport.h)

См. также

RECEIVE_TOKEN_INFORMATION_RESPONSE_HEADER