Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Извлекает характеристики изменяющегося объекта.
Синтаксис
typedef struct _GET_CHANGER_PARAMETERS {
ULONG Size;
USHORT NumberTransportElements;
USHORT NumberStorageElements;
USHORT NumberCleanerSlots;
USHORT NumberIEElements;
USHORT NumberDataTransferElements;
USHORT NumberOfDoors;
USHORT FirstSlotNumber;
USHORT FirstDriveNumber;
USHORT FirstTransportNumber;
USHORT FirstIEPortNumber;
USHORT FirstCleanerSlotAddress;
USHORT MagazineSize;
ULONG DriveCleanTimeout;
ULONG Features0;
ULONG Features1;
UCHAR MoveFromTransport;
UCHAR MoveFromSlot;
UCHAR MoveFromIePort;
UCHAR MoveFromDrive;
UCHAR ExchangeFromTransport;
UCHAR ExchangeFromSlot;
UCHAR ExchangeFromIePort;
UCHAR ExchangeFromDrive;
UCHAR LockUnlockCapabilities;
UCHAR PositionCapabilities;
UCHAR Reserved1[2];
ULONG Reserved2[2];
} GET_CHANGER_PARAMETERS, *PGET_CHANGER_PARAMETERS;
Члены
Size
Размер этой структуры в байтах. Задайте значение sizeof(GET_CHANGER_PARAMETERS). В действительности этот элемент указывает версию этой структуры, используемой драйвером миникласса.
NumberTransportElements
Указывает количество элементов транспорта в средстве изменения. Для SCSI changer это определяется на странице адресов элемента. Это значение почти всегда равно 1, так как большинство переменных имеют один элемент транспорта, который может иметь один или два механизма выбора. Средство выбора с двумя механизмами выбора на транспорте не должно представляться как наличие двух транспортов, так как средства выбора не могут быть решены по отдельности. Высокоуровневые библиотеки носителей могут иметь два и несколько элементов транспорта для отказоустойчивости.
NumberStorageElements
Указывает количество элементов хранилища (слотов) в средстве изменения. Для SCSI changer это определяется на странице адресов элемента. Это значение представляет максимальное количество слотов, доступных для этого средства изменения, в том числе в съемных журналах, независимо от того, установлены ли журналы. Если NumberCleanerSlots равно 1, NumberStorageElements меньше максимального числа слотов в средстве изменения.
NumberCleanerSlots
Указывает количество элементов хранения (слотов) для более чистых патронов в средстве изменения. Для изменения SCSI это значение не сообщается в данных о смысле режима, поэтому драйвер миникласса должен предоставить его. Драйвер миникласса должен задать NumberCleanerSlots значение 1, только если руководство оператора для средства изменения определяет определенный слот как более чистый слот. Если NumberCleanerSlots равно 1, то FirstCleanerSlotAddress указывает отсчитываемый от нуля адрес слота, в котором следует вставить средство очистки диска. Если средство изменения не поддерживает очистку диска путем программного перемещения более чистого патрона из слота на диск, драйвер миникласса должен задать NumberCleanerSlots значение 0. NumberCleanerSlots не должно превышать 1.
NumberIEElements
Указывает количество элементов IEport, которое имеет для вставки и извлечения носителя. Для SCSI changer это определяется на странице адресов элемента. Элемент IEport не должен быть частью пространства элемента хранилища (слота), поэтому необходимо перенести носитель между IEport и слотом с помощью команды MOVE MEDIUM SCSI. Если у меня есть дверь, а не истинный IEport, драйвер миникласса должен задать NumberIEElements значение 0.
NumberDataTransferElements
Указывает количество элементов передачи данных (дисков) в средстве изменения. Для SCSI changer это определяется на странице адресов элемента. В отличие от NumberStorageElements, которое указывает общее количество возможных слотов, которые фактически присутствуют, NumberDataTransferElements указывает количество дисков, которые на самом деле присутствуют в средстве изменения.
NumberOfDoors
Указывает количество дверей, которые имеет изменяющийся объект. Для изменения SCSI это значение не сообщается в данных о смысле режима, поэтому драйвер миникласса должен предоставить его. Дверь предоставляет доступ ко всем средствам массовой информации в меняющегося средстве одновременно, в отличие от IEport, который предоставляет доступ к одному или нескольким, но не ко всем средствам массовой информации. Дверь меняющего средства может быть физической передней дверью или одним журналом, который содержит все средства массовой информации. Если переменная поддерживает только IEport для вставки и извлечения носителей, NumberOfDoors должно быть 0.
FirstSlotNumber
Указывает номер, используемый поставщиком средства изменения для идентификации первого элемента хранилища (слота) в средстве изменения для конечного пользователя, помечая журнал или определяя схему нумерирования слотов в руководстве операторов изменителя. FirstSlotNumber обычно равно 0 или 1, но это может быть первый адрес в последовательном диапазоне адресов слотов, определенных поставщиком.
FirstDriveNumber
Указывает номер, используемый поставщиком средства изменения для идентификации первого элемента передачи данных (диска) в средстве изменения для конечного пользователя. FirstDriveNumber обычно равно 0 или 1, но это может быть первый адрес в последовательном диапазоне адресов дисков, определенных поставщиком.
FirstTransportNumber
Указывает номер, используемый поставщиком средства изменения для идентификации первого (и обычно только) транспортного элемента в средстве изменения для конечного пользователя. FirstTransportNumber обычно равно 0 или 1, но это может быть первый адрес в последовательном диапазоне адресов транспорта, определенных поставщиком.
FirstIEPortNumber
Указывает номер, используемый поставщиком средства изменения для идентификации первого (и обычно только) IEport в обработчике изменений для конечного пользователя. FirstIEPortNumber обычно равно 0 или 1, но это может быть первый адрес в последовательном диапазоне адресов IEport, определенных поставщиком. Если NumberIEElements равно 0, FirstIEPortNumber также должно быть равно 0.
FirstCleanerSlotAddress
Указывает номер, используемый поставщиком средства изменения для идентификации первого (и единственного) адреса слота, назначенного обработчику диска более чистому патрону для конечного пользователя. Это должно быть значение, определенное поставщиком в руководстве операторов меняющего пользователя. Например, если у меняющегося есть 8 слотов с номером 1–8, а руководство оператора назначает слот 8 в качестве более чистого слота диска, FirstSlotNumber будет 1 и FirstCleanerSlotAddress будет 8. Если те же 8 слотов были нумерованы от 0 до 7, FirstSlotNumber будет 0 и FirstCleanerSlotAddress будет 7. Если NumberCleanerSlots равно 0, FirstCleanerSlotAddress должно быть равно 0.
MagazineSize
Указывает количество слотов в съемных журналах в средстве изменения. Этот элемент действителен, только если CHANGER_CARTRIDGE_MAGAZINE заданы в Features0.
DriveCleanTimeout
Указывает в два раза максимальное количество секунд, которое должно занять очистка. Диски меняющего устройства должны быть очищены его более чистым патроном в половину времени, указанного DriveCleanTimeout. Например, если диск обычно очищается в течение 300 секунд (5 минут), DriveCleanTimeout должно иметь значение 600.
Features0
Указывает функции, поддерживаемые методом изменения. Этот элемент может иметь одно или несколько следующих значений побитового ORed вместе.
CHANGER_BAR_CODE_SCANNER_INSTALLED
Средство изменения поддерживает средство чтения штрих-кода и устанавливается средство чтения. Драйвер миникласса не должен жестко закодировать этот флаг, если только не установлен модуль чтения штрих-кода средства изменения. Если модуль чтения штрихкода является необязательным, драйвер миникласса должен определить, установлен ли модуль чтения и установить флаг соответствующим образом.
CHANGER_INIT_ELEM_STAT_WITH_RANGE
Средство изменения может инициализировать элементы в указанном диапазоне. Для изменения SCSI этот флаг указывает, поддерживает ли менятель команду INITIALIZE ELEMENT STATUS WITH RANGE SCSI.
CHANGER_CLOSE_IEPORT
У меня есть IEport и может вычитать IEport программным способом.
CHANGER_OPEN_IEPORT
В средстве изменения есть IEport, который может расширить IEport программным способом.
CHANGER_STATUS_NON_VOLATILE
В средстве изменения для сведений о состоянии элемента используется ненуляционная память.
CHANGER_EXCHANGE_MEDIA
Поддерживает команду EXCHANGE MEDIUM SCSI, обрабатывая два тома одновременно или используя другие элементы средства изменения для эмуляции этой возможности.
CHANGER_CLEANER_SLOT
Указывает, что у меняющегося есть определенный слот, предназначенный для более чистого патрона. Если этот флаг задан, NumberCleanerSlots должно быть одним и FirstCleanerSlotAddress должен указать адрес более чистого слота. Этот бит можно задать только в том случае, если установлен CHANGER_DRIVE_CLEANING_REQUIRED и CHANGER_CLEANER_OPS_NOT_SUPPORTED сбрасывается.
CHANGER_LOCK_UNLOCK
Дверь средства изменения, IEport или клавиатура могут быть заблокированы или разблокированы программным способом. Если этот флаг задан, LockUnlockCapabilities указывает, какие элементы можно заблокировать или разблокировать.
CHANGER_CARTRIDGE_MAGAZINE
В замену используются съемные журналы патронов для некоторых или всех слотов хранения.
CHANGER_MEDIUM_FLIP
Транспортный элемент средства изменения поддерживает перевернутый (поворот) носитель. Для изменения SCSI этот флаг отражает бит поворота на странице параметров геометрии транспорта.
CHANGER_POSITION_TO_ELEMENT
Переменяемый объект может разместить транспорт в определенном месте назначения. Для SCSI changer этот флаг указывает, поддерживает ли переменная команда POSITION TO ELEMENT SCSI. Если этот флаг задан, PositionCapabilities указывает элементы, к которым можно разместить транспорт.
CHANGER_REPORT_IEPORT_STATE
Изменение может сообщить, присутствует ли носитель в IEport. Такой датчик должен иметь датчик в IEport, чтобы обнаружить наличие или отсутствие носителя.
CHANGER_STORAGE_DRIVE
Изменение может использовать диск в качестве независимого элемента хранилища; то есть он может хранить носитель на диске, не считывая его. Для средства изменения SCSI этот флаг отражает состояние бита DT на странице возможностей устройства.
CHANGER_STORAGE_IEPORT
Изменение может использовать IEport в качестве независимого элемента хранилища. Для средства изменения SCSI этот флаг отражает состояние бита ввода-адреса на странице возможностей устройства.
CHANGER_STORAGE_SLOT
Изменение может использовать слот в качестве независимого элемента хранилища для мультимедиа. Для средства изменения SCSI этот флаг отражает состояние ST-бита на странице возможностей устройства. Слоты — это обычное место хранения для носителей, поэтому сменщик должен поддерживать эту функцию.
CHANGER_STORAGE_TRANSPORT
Изменение может использовать транспорт в качестве независимого элемента хранилища. Для средства изменения SCSI этот флаг отражает состояние бита MT на странице возможностей устройства.
CHANGER_DRIVE_CLEANING_REQUIRED
Указывает, что диски средства изменения могут периодически сообщать коды смысла, указывающие на то, что диск требует очистки.
CHANGER_PREDISMOUNT_EJECT_REQUIRED
Для изменения требуется явная команда, выданная с помощью драйвера массового хранилища (ленточный, диск или компакт-диск, например) для извлечения носителя с диска, прежде чем средство изменения может переместить носитель с диска на слот. Если носитель изменений автоматически извлекает носитель, драйвер миникласса должен очистить этот флаг.
CHANGER_CLEANER_ACCESS_NOT_VALID
Флаг ELEMENT_STATUS_ACCESS в структуре CHANGER_ELEMENT_STATUS для элемента транспорта данных недопустим, если элемент транспорта содержит патрон очистки.
CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS
Для доступа ко всем дискам требуется, чтобы все диски были пустыми (отключаются), прежде чем они смогут получить доступ через свою дверь. Драйвер миникласса должен задать этот флаг, если у меняющегося есть статические жесткие диски, которые могут быть затронуты оператором, получающим доступ к внутренней части средства изменения, или если сменщик автоматически извлекает носитель с своих дисков, когда оператор пытается физически открыть дверь.
CHANGER_VOLUME_IDENTIFICATION
Изменение поддерживает идентификацию томов. Для изменения SCSI этот флаг указывает, поддерживает ли менятель команды SEND VOLUME TAG и REQUEST VOLUME ELEMENT ADDRESS SCSI.
CHANGER_VOLUME_SEARCH
Изменение может искать сведения о томе. Для изменения SCSI этот флаг указывает, поддерживает ли средство изменения команду SEND VOLUME TAG SCSI с кодом действия отправки перевода.
CHANGER_VOLUME_ASSERT
Изменение может проверить сведения о томе. Для SCSI changer этот флаг указывает, поддерживает ли средство изменения команду SEND VOLUME TAG SCSI с кодом действия отправки ASSERT.
CHANGER_VOLUME_REPLACE
Изменение может заменить сведения о томе. Для изменения SCSI этот флаг указывает, поддерживает ли средство изменения команду SEND VOLUME TAG SCSI с кодом действия отправки REPLACE.
CHANGER_VOLUME_UNDEFINE
Изменение может очистить существующие сведения о томе. Для изменения SCSI этот флаг указывает, поддерживает ли средство изменения команду SEND VOLUME TAG SCSI с кодом действия отправки UNDEFINE.
CHANGER_SERIAL_NUMBER_VALID
Серийный номер, сообщаемый GetProductData, является допустимым и уникальным для всех переменных этого типа. Серийные номера не гарантируют уникальность между поставщиками и линиями продуктов. Если серийный номер меняющегося объекта является уникальным в соответствии с этим определением, драйвер миникласса должен задать этот флаг и задать в CHANGER_PRODUCT_DATA серийный номер.
CHANGER_PREMOUNT_EJECT_REQUIRED
Для изменения требуется явная команда, выданная драйвером массового хранилища, для извлечения механизма диска перед перемещением носителя из слота на диск. Например, сменщик с CD-ROM дисками может потребовать, чтобы лоток был представлен роботизированному транспорту, чтобы часть носителя могла быть загружена на лоток во время операции подключения. Если механизм изменения удаляется автоматически, драйвер миникласса должен очистить этот флаг.
CHANGER_DEVICE_REINITIALIZE_CAPABLE
Метод изменения может перенаправить свой транспортный элемент в ответ на явную команду. Драйвер класса changer вызывает ChangerReinitializeUnit для запуска пересчета.
CHANGER_KEYPAD_ENABLE_DISABLE
Панель управления изменениями может быть включена и отключена программным способом.
CHANGER_RESERVED_BIT
Зарезервировано, чтобы указать флаги Features1.
Features1
Указывает дополнительные функции, поддерживаемые методом изменения. Этот элемент может иметь одно или несколько следующих значений побитового ORed вместе.
CHANGER_PREDISMOUNT_ALIGN_TO_SLOT
Указывает, что транспорт необходимо переместить в целевой слот перед перемещением носителя с диска на слот. Если это задано, необходимо сбросить битовое CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE.
CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE
Указывает, что транспорт необходимо переместить на диск перед перемещением носителя с диска на слот. Если это задано, необходимо сбросить битовое CHANGER_PREDISMOUNT_ALIGN_TO_SLOT.
CHANGER_CLEANER_AUTODISMOUNT
Указывает, что сменщик переместит фильтр обратно в исходный слот автоматически, после завершения очистки. Этот бит можно задать только в том случае, если установлен CHANGER_DRIVE_CLEANING_REQUIRED и CHANGER_CLEANER_OPS_NOT_SUPPORTED сбрасывается.
CHANGER_TRUE_EXCHANGE_CAPABLE
Устройство может управлять двумя томами одновременно без использования дополнительных элементов средства изменения.
CHANGER_SLOTS_USE_TRAYS
Для смены используются съемные лотки в слотах, для которых требуется поместить носитель в лоток и лоток переместился в нужное положение.
CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR
Указывает, что при перемещении тома из диска в слот том должен вернуться в тот же слот, с которого он ранее был перемещен на диск.
CHANGER_CLEANER_OPS_NOT_SUPPORTED
Указывает, что транспорт средства изменения не может быть программно командован программным обеспечением над драйвером смены, чтобы переместить патрон очистки на грязный диск. Этот бит можно задать только в том случае, если задан CHANGER_DRIVE_CLEANING_REQUIRED бит. Если этот бит задан, необходимо сбросить оба CHANGER_CLEANER_AUTODISMOUNT и CHANGER_CLEANER_SLOT.
CHANGER_IEPORT_USER_CONTROL_OPEN
Для этого пользователю требуется вручную открыть закрытый IEport.
CHANGER_IEPORT_USER_CONTROL_CLOSE
Для изменения пользователю требуется вручную закрыть открытый IEport.
CHANGER_MOVE_EXTENDS_IEPORT
Изменяющий элемент автоматически расширяет область, когда команда будет выдана для перемещения носителя в IEport.
CHANGER_MOVE_RETRACTS_IEPORT
При каждом выполнении команды для перемещения мультимедиа из IEport изменяющийся объект автоматически удаляет область.
MoveFromTransport
Указывает, поддерживает ли изменение часть носителя из транспортного элемента в другой транспортный элемент, слот хранения, IEport или диск. Для средства изменения SCSI это определяется на странице возможностей устройства. Транспорт обычно не является источником или назначением для перемещения или обмена мультимедиа.
Вызывающие элементы могут использовать следующие маски, чтобы определить, может ли сменитель перемещать носитель в заданный элемент.
CHANGER_TO_TRANSPORT
Средство изменения может выполнять операцию из указанного элемента в транспорт.
CHANGER_TO_SLOT
Средство изменения может выполнять операцию из указанного элемента в слот хранения.
CHANGER_TO_IEPORT
Средство изменения может выполнять операцию из указанного элемента в IEport.
CHANGER_TO_DRIVE
Средство изменения может выполнять операцию из указанного элемента на диск.
MoveFromSlot
Указывает, поддерживает ли средство изменения перемещение среды из слота хранилища в транспортный элемент, другой слот хранения, IEport или диск. Вызывающие могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли изменение перемещение.
MoveFromIePort
Указывает, поддерживает ли средство изменения перемещение среды из IEport в транспортный элемент, слот хранения, другой IEport или диск. Для средства изменения SCSI это определяется на странице возможностей устройства. Вызывающие средства могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли изменение перемещение.
MoveFromDrive
Указывает, поддерживает ли средство изменения перемещение среды с диска на транспортный элемент, слот хранения, IEport или другой диск. Вызывающие могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли изменение перемещение.
ExchangeFromTransport
Указывает, поддерживает ли средство изменения обмен средой между элементом транспорта и другим элементом транспорта, слотом хранения, IEport или диском. Вызывающие серверы могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли меняющийся обмен.
ExchangeFromSlot
Указывает, поддерживает ли средство изменения обмен средой между слотом хранилища и элементом транспорта, другим слотом хранения, IEport или диском. Вызывающие серверы могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли меняющийся обмен.
ExchangeFromIePort
Указывает, поддерживает ли средство изменения обмен средой между IEport и элементом транспорта, слотом хранения, другим IEport или диском. Вызывающие серверы могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли меняющийся обмен.
ExchangeFromDrive
Указывает, поддерживает ли средство изменения обмен средой между диском и элементом транспорта, слотом хранения, IEport или другим диском. Вызывающие серверы могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживает ли меняющийся обмен.
LockUnlockCapabilities
Указывает, какие элементы средства изменения можно заблокировать или разблокировать программным способом. Этот элемент действителен, только если CHANGER_LOCK_UNLOCK задан в Features0.
Вызывающие элементы могут использовать следующие маски, чтобы определить, может ли переключитель заблокировать или разблокировать определенный элемент.
LOCK_UNLOCK_IEPORT
Изменение может заблокировать или разблокировать свои IEport(ы).
LOCK_UNLOCK_DOOR
Сменщик может заблокировать или разблокировать ее дверь.
LOCK_UNLOCK_KEYPAD
Изменение может заблокировать или разблокировать его клавиатуру.
PositionCapabilities
Указывает элементы, на которые может размещаться его транспорт. Вызывающие элементы могут использовать маски, описанные в разделе MoveFromTransport, чтобы определить, поддерживается ли изменение расположение транспорта в определенном элементе. Этот элемент действителен, только если CHANGER_POSITION_TO_ELEMENT задан в Features0.
Reserved1[2]
Зарезервировано для дальнейшего использования.
Reserved2[2]
Зарезервировано для дальнейшего использования.
Замечания
GET_CHANGER_PARAMETERS содержит параметры сменителя. Драйвер миникласса изменения выделяет и заполняет эту структуру при запросе драйвера класса changer.
Требования
| Требование | Ценность |
|---|---|
| заголовка | ntddchgr.h |