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


структура TAPE_INIT_DATA_EX (minitape.h)

TAPE_INIT_DATA_EX определяет значения и подпрограммы, относящиеся к драйверу мини-класса windows 2000. Подпрограмма DriverEntry для мини-класса ленты передает эти сведения в драйвер класса ленты для завершения инициализации драйвера мини-класса.

Синтаксис

typedef struct _TAPE_INIT_DATA_EX {
  ULONG                        InitDataSize;
  TAPE_VERIFY_INQUIRY_ROUTINE  VerifyInquiry;
  BOOLEAN                      QueryModeCapabilitiesPage;
  ULONG                        MinitapeExtensionSize;
  TAPE_EXTENSION_INIT_ROUTINE  ExtensionInit;
  ULONG                        DefaultTimeOutValue;
  TAPE_ERROR_ROUTINE           TapeError;
  ULONG                        CommandExtensionSize;
  TAPE_PROCESS_COMMAND_ROUTINE CreatePartition;
  TAPE_PROCESS_COMMAND_ROUTINE Erase;
  TAPE_PROCESS_COMMAND_ROUTINE GetDriveParameters;
  TAPE_PROCESS_COMMAND_ROUTINE GetMediaParameters;
  TAPE_PROCESS_COMMAND_ROUTINE GetPosition;
  TAPE_PROCESS_COMMAND_ROUTINE GetStatus;
  TAPE_PROCESS_COMMAND_ROUTINE Prepare;
  TAPE_PROCESS_COMMAND_ROUTINE SetDriveParameters;
  TAPE_PROCESS_COMMAND_ROUTINE SetMediaParameters;
  TAPE_PROCESS_COMMAND_ROUTINE SetPosition;
  TAPE_PROCESS_COMMAND_ROUTINE WriteMarks;
  TAPE_PROCESS_COMMAND_ROUTINE PreProcessReadWrite;
  TAPE_PROCESS_COMMAND_ROUTINE TapeGetMediaTypes;
  ULONG                        MediaTypesSupported;
  TAPE_PROCESS_COMMAND_ROUTINE TapeWMIOperations;
  ULONG                        Reserved[2];
} TAPE_INIT_DATA_EX, *PTAPE_INIT_DATA_EX;

Члены

InitDataSize

Размер этой структуры в байтах.

VerifyInquiry

Указывает точку входа подпрограммы TapeMiniVerifyInquiry драйвера ленточного мини-класса, которая определяет, поддерживает ли драйвер данное устройство. Эта подпрограмма является обязательной.

QueryModeCapabilitiesPage

Направляет драйвер класса ленты при значении TRUE на передачу страницы возможностей режима в подпрограммы TapeMiniVerifyInquiry и TapeMiniExtensionInit драйвера ленты.

MinitapeExtensionSize

Задает размер (в байтах) области контекста для конкретного драйвера. Если этот элемент не равен нулю, ExtensionInit не должен иметь значение NULL. Это значение является необязательным и должно быть равно нулю, если оно не используется.

ExtensionInit

Указатель на подпрограмму TapeMiniExtensionInit драйвера ленточного мини-класса, которая инициализирует дополнительное расширение minitape, если оно есть. Если параметр MiniTapeExtensionSize равен нулю , параметр ExtensionInit должен иметь значение NULL.

DefaultTimeOutValue

Указывает время в секундах, в течение которых драйвер класса ленты ожидает запроса SRB перед его отменой. Если это значение равно нулю, драйвер класса ленты задает соответствующее значение по умолчанию. Драйвер класса ленты всегда использует значение времени ожидания по умолчанию для запросов на чтение и запись. Подпрограммы, содержащиеся в структуре TAPE_INIT_DATA_EX, могут переопределить значение времени ожидания по умолчанию для запросов управления устройствами, задав TimeOutValue в SRB.

TapeError

Указатель на подпрограмму TapeMiniTapeError драйвера ленточного мини-класса, которая дополняет действия по обработке ошибок драйвера класса ленты. Эта подпрограмма является необязательной. Если он не используется, для TapeError необходимо задать значение NULL.

CommandExtensionSize

Указывает размер (в байтах) расширения команды, выделяемого перед запуском каждой команды ленты. Драйвер мини-класса ленты использует расширение команд для хранения контекста во время обработки команд ленты. Его размер и внутренняя структура определяются драйвером мини-класса ленты. Расширение команды является необязательным. Если он не используется, параметр CommandExtensionSize должен иметь нулевое значение.

CreatePartition

Указатель на подпрограмму TapeMiniCreatePartition драйвера ленточного мини-класса, которая создает секцию на ленте. Эта подпрограмма является обязательной.

Erase

Указатель на подпрограмму TapeMiniErase драйвера ленты miniclass, которая стирает ленту. Эта подпрограмма является обязательной.

GetDriveParameters

Указатель на подпрограмму TapeMiniGetDriveParameters драйвера ленточного мини-класса, которая обрабатывает запросы на получение параметров диска. Эта подпрограмма является обязательной.

GetMediaParameters

Указатель на подпрограмму TapeMiniGetMediaParameters драйвера ленточного мини-класса, которая обрабатывает запросы на получение параметров мультимедиа. Эта подпрограмма является обязательной.

GetPosition

Указатель на подпрограмму TapeMiniGetPosition драйвера ленточного мини-класса, которая обрабатывает запросы на получение положения ленты. Эта подпрограмма является обязательной.

GetStatus

Указатель на подпрограмму TapeMiniGetStatus драйвера ленточного мини-класса, которая обрабатывает запросы состояния. Эта подпрограмма является обязательной.

Prepare

Указатель на подпрограмму TapeMiniPrepare драйвера ленточного мини-класса, которая подготавливает ленточное устройство. Эта подпрограмма является обязательной.

SetDriveParameters

Указатель на подпрограмму TapeMiniSetDriveParameters драйвера ленточного мини-класса, которая задает параметры диска. Эта подпрограмма является обязательной.

SetMediaParameters

Указатель на подпрограмму TapeMiniSetMediaParameters драйвера ленточного мини-класса, которая задает параметры мультимедиа. Эта подпрограмма является обязательной.

SetPosition

Указатель на подпрограмму TapeMiniSetPosition драйвера ленточного мини-класса, которая размещает ленту. Эта подпрограмма является обязательной.

WriteMarks

Указатель на подпрограмму TapeMiniWriteMarks драйвера ленточного мини-класса, которая записывает метки на ленту. Эта подпрограмма является обязательной.

PreProcessReadWrite

Указатель на подпрограмму TapeMiniPreProcessReadWrite драйвера ленточного мини-класса, которая выполняет операции для конкретного устройства перед выполнением всех операций чтения и записи. Эта процедура является необязательной и не требуется большинству драйверов. Если он не используется, параметр PreProcessReadWrite должен иметь значение NULL.

TapeGetMediaTypes

Указатель на подпрограмму TapeMiniGetMediaTypes драйвера ленточного мини-класса, которая получает описание каждого типа носителя, поддерживаемого ленточным устройством. Эта подпрограмма является обязательной.

MediaTypesSupported

Указывает количество типов мультимедиа, поддерживаемых устройством.

TapeWMIOperations

Указатель на подпрограмму TapeMiniWMIControl .

Reserved[2]

Зарезервировано.

Комментарии

Подпрограмма DriverEntry драйвера мини-класса ленты вызывает TapeClassZeroMemory для очистки TAPE_INIT_DATA_EX, заполняет необходимые элементы и все соответствующие необязательные элементы, а TapeClassInitialize — указателем на эту структуру.

Имена подпрограмм драйвера мини-класса ленты, указанные в описаниях элементов этой структуры, являются просто именами заполнителей. Прототип этих подпрограмм объявляется в файле newtape.h как TAPE_PROCESS_COMMAND_ROUTINE.

Значения параметров этого прототипа различаются для каждой подпрограммы драйвера мини-класса. Подробные сведения об использовании этих параметров см. в описаниях каждой отдельной подпрограммы драйвера мини-класса.

Требования

Требование Значение
Заголовок minitape.h (включая Minitape.h)

См. также раздел

<a href="DriverEntry of Tape Miniclass Driver

TapeClassInitialize

TapeClassZeroMemory

TapeMiniCreatePartition

TapeMiniErase

TapeMiniExtensionInit

TapeMiniGetDriveParameters

TapeMiniGetMediaParameters

TapeMiniGetMediaTypes

TapeMiniGetPosition

TapeMiniGetStatus

TapeMiniPrepare

TapeMiniSetDriveParameters

TapeMiniSetMediaParameters

TapeMiniSetPosition

TapeMiniTapeError

TapeMiniVerifyInquiry

TapeMiniWriteMarks