Compartir a través de


estructura GET_CHANGER_PARAMETERS (ntddchgr.h)

Recupera las características del modificador.

Sintaxis

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;

Miembros

Size

Tamaño de esta estructura en bytes. Establézcalo en sizeof(GET_CHANGER_PARAMETERS). En efecto, este miembro indica la versión de esta estructura que usa el controlador de miniclase.

NumberTransportElements

Indica el número de elementos de transporte en el modificador. Para un modificador SCSI, se define en la página de direcciones del elemento. Este valor es casi siempre 1, ya que la mayoría de los modificadores tienen un único elemento de transporte, que puede tener uno o dos mecanismos de selector. Un cambiador que tenga dos mecanismos de selector en su transporte no debe representarse como tener dos transportes, ya que los selectores no se pueden abordar individualmente. Las bibliotecas multimedia de gama alta pueden tener elementos de transporte duales y múltiples para la tolerancia a errores.

NumberStorageElements

Indica el número de elementos de almacenamiento (ranuras) en el modificador. Para un modificador SCSI, se define en la página de direcciones del elemento. Este valor representa el número máximo de ranuras disponibles para este modificador, incluidos los de revistas extraíbles, si se instalan las revistas. Si NumberCleanerSlots es 1, NumberStorageElements es 1 menor que el número máximo de ranuras del modificador.

NumberCleanerSlots

Indica el número de elementos de almacenamiento (ranuras) para cartuchos más limpios en el cambiador. En el caso de un modificador SCSI, este valor no se notifica en los datos del sentido del modo, por lo que el controlador de miniclase debe proporcionarlo. El controlador de miniclase debe establecer NumberCleanerSlots en 1 solo si la guía del operador para el modificador identifica una ranura específica como ranura más limpia. Si NumberCleanerSlots es 1, FirstCleanerSlotAddress indica la dirección de base cero de la ranura en la que se debe insertar un limpiador de unidades. Si el cambiador no admite la limpieza de unidades moviendo mediante programación el cartucho más limpio de su ranura a una unidad, el controlador de miniclase debe establecer NumberCleanerSlots en 0. NumberCleanerSlots no debe ser mayor que 1.

NumberIEElements

Indica el número de elementos IEport que el modificador tiene para insertar y expulsar elementos multimedia. Para un modificador SCSI, se define en la página de direcciones del elemento. Un elemento IEport no debe formar parte del espacio del elemento de almacenamiento (ranura) y debe ser posible transportar medios entre IEport y una ranura mediante un comando MOVE MEDIUM SCSI. Si el cambiador tiene una puerta y no un IEport verdadero, el controlador de miniclase debe establecer NumberIEElements en 0.

NumberDataTransferElements

Indica el número de elementos de transferencia de datos (unidades) en el modificador. Para un modificador SCSI, se define en la página de direcciones del elemento. A diferencia de NumberStorageElements, que indica el número total de ranuras posibles si las ranuras están presentes realmente, NumberDataTransferElements indica el número de unidades que realmente están presentes en el modificador.

NumberOfDoors

Indica el número de puertas que tiene el cambiador. En el caso de un modificador SCSI, este valor no se notifica en los datos del sentido del modo, por lo que el controlador de miniclase debe proporcionarlo. Una puerta proporciona acceso a todos los medios del cambiador a la vez, a diferencia de un IEport que proporciona acceso a uno o varios medios, pero no a todos. La puerta de un cambiador puede ser una puerta frontal física o una sola revista que contenga todos los medios. Si un modificador solo admite un IEport para insertar y expulsar medios, NumberOfDoors debe ser 0.

FirstSlotNumber

Indica el número utilizado por el proveedor del modificador para identificar el primer elemento de almacenamiento (ranura) del modificador al usuario final, ya sea marcando una revista o definiendo un esquema de numeración de ranuras en la guía de operadores del modificador. FirstSlotNumber suele ser 0 o 1, pero puede ser la primera dirección en un intervalo consecutivo de direcciones de ranura definidas por el proveedor.

FirstDriveNumber

Indica el número utilizado por el proveedor del modificador para identificar el primer elemento de transferencia de datos (unidad) del modificador al usuario final. FirstDriveNumber suele ser 0 o 1, pero puede ser la primera dirección en un intervalo consecutivo de direcciones de unidad definidas por el proveedor.

FirstTransportNumber

Indica el número utilizado por el proveedor del modificador para identificar el primer elemento de transporte (y normalmente solo) en el modificador al usuario final. FirstTransportNumber suele ser 0 o 1, pero puede ser la primera dirección en un intervalo consecutivo de direcciones de transporte definidas por el proveedor.

FirstIEPortNumber

Indica el número utilizado por el proveedor del modificador para identificar el primer IEport (y normalmente solo) en el modificador al usuario final. FirstIEPortNumber suele ser 0 o 1, pero puede ser la primera dirección en un intervalo consecutivo de direcciones IEport definidas por el proveedor. Si NumberIEElements es 0, FirstIEPortNumber también debe ser 0.

FirstCleanerSlotAddress

Indica el número utilizado por el proveedor del modificador para identificar la primera dirección de ranura (y solo) asignada a un cartucho más limpio de unidad al usuario final. Debe ser el valor definido por el proveedor en la guía de operadores del modificador. Por ejemplo, si un cambiador tiene 8 ranuras numeradas de 1 a 8 y la guía de su operador designa la ranura 8 como ranura más limpia, FirstSlotNumber sería 1 y FirstCleanerSlotAddress sería 8. Si se numeraron entre 0 y 7 las mismas ranuras, FirstSlotNumber sería 0 y FirstCleanerSlotAddress sería 7. Si NumberCleanerSlots es 0, FirstCleanerSlotAddress debe ser 0.

MagazineSize

Indica el número de ranuras de las revistas extraíbles del cambiador. Este miembro solo es válido si CHANGER_CARTRIDGE_MAGAZINE está establecido en Features0.

DriveCleanTimeout

Indica dos veces el número máximo de segundos que se espera que tarde una limpieza. Las unidades del cambiador deben limpiarse con su cartucho más limpio a la mitad del tiempo especificado por DriveCleanTimeout. Por ejemplo, si una unidad se limpia normalmente en 300 segundos (5 minutos), DriveCleanTimeout debe establecerse en 600.

Features0

Indica las características admitidas por el modificador. Este miembro puede tener uno o varios de los valores siguientes de forma bit a bit ORed juntos.

CHANGER_BAR_CODE_SCANNER_INSTALLED

El modificador admite un lector de código de barras y el lector está instalado. Un controlador de miniclase no debe codificar de forma rígida esta marca a menos que el lector de código de barras del modificador siempre esté instalado. Si el lector de código de barras es opcional, el controlador de miniclase debe determinar si el lector está instalado realmente y establecer la marca en consecuencia.

CHANGER_INIT_ELEM_STAT_WITH_RANGE

El modificador puede inicializar elementos dentro de un intervalo especificado. Para un modificador SCSI, esta marca indica si el modificador admite el comando INITIALIZE ELEMENT STATUS WITH RANGE SCSI.

CHANGER_CLOSE_IEPORT

El cambiador tiene un IEport y puede retirar IEport mediante programación.

CHANGER_OPEN_IEPORT

El modificador tiene un IEport y puede extender IEport mediante programación.

CHANGER_STATUS_NON_VOLATILE

El modificador usa memoria no volátil para la información de estado del elemento.

CHANGER_EXCHANGE_MEDIA

Admite el comando EXCHANGE MEDIUM SCSI controlando dos volúmenes a la vez o usando otros elementos del modificador para emular esta funcionalidad.

CHANGER_CLEANER_SLOT

Indica que el cambiador tiene una ranura específica designada para un cartucho más limpio. Si se establece esta marca, NumberCleanerSlots debe ser uno y FirstCleanerSlotAddress debe especificar la dirección de la ranura más limpia. Este bit solo se puede establecer si se establece CHANGER_DRIVE_CLEANING_REQUIRED y CHANGER_CLEANER_OPS_NOT_SUPPORTED se restablece.

CHANGER_LOCK_UNLOCK

La puerta del cambiador, IEport o el teclado se pueden bloquear o desbloquear mediante programación. Si se establece esta marca, LockUnlockCapabilities indica qué elementos se pueden bloquear o desbloquear.

CHANGER_CARTRIDGE_MAGAZINE

El cambiador utiliza cargadores extraíbles de cartuchos para algunas o todas las ranuras de almacenamiento.

CHANGER_MEDIUM_FLIP

El elemento de transporte del modificador admite el volteo (rotación). Para un modificador SCSI, esta marca refleja el bit de rotación en la página de parámetros de geometría de transporte.

CHANGER_POSITION_TO_ELEMENT

El modificador puede colocar el transporte en un destino determinado. Para un modificador SCSI, esta marca indica si el modificador admite el comando POSITION TO ELEMENT SCSI. Si se establece esta marca, PositionCapabilities indica los elementos a los que se puede colocar el transporte.

CHANGER_REPORT_IEPORT_STATE

El modificador puede informar de si los medios están presentes en IEport. Este modificador debe tener un sensor en IEport para detectar la presencia o ausencia de medios.

CHANGER_STORAGE_DRIVE

El modificador puede usar una unidad como elemento de almacenamiento independiente; es decir, puede almacenar elementos multimedia en la unidad sin leerlo. Para un modificador SCSI, esta marca refleja el estado del bit DT en la página de funcionalidades del dispositivo.

CHANGER_STORAGE_IEPORT

El modificador puede usar un IEport como elemento de almacenamiento independiente. En el caso de un modificador SCSI, esta marca refleja el estado del bit de E/S en la página de funcionalidades del dispositivo.

CHANGER_STORAGE_SLOT

El cambiador puede usar una ranura como un elemento de almacenamiento independiente para los medios. Para un cambiador SCSI, esta marca refleja el estado del bit ST en la página de funcionalidades del dispositivo. Las ranuras son la ubicación de almacenamiento normal para los medios, por lo que el cambiador debe admitir esta funcionalidad.

CHANGER_STORAGE_TRANSPORT

El modificador puede usar un transporte como un elemento de almacenamiento independiente. Para un cambiador SCSI, esta marca refleja el estado del bit mt en la página de funcionalidades del dispositivo.

CHANGER_DRIVE_CLEANING_REQUIRED

Indica que las unidades del modificador pueden informar periódicamente de códigos de sentido que indican que la unidad requiere limpieza.

CHANGER_PREDISMOUNT_EJECT_REQUIRED

El modificador requiere un comando explícito emitido a través de un controlador de almacenamiento masivo (cinta, disco o CD-ROM, por ejemplo) para expulsar medios de una unidad antes de que el cambiador pueda mover el medio de una unidad a una ranura. Si el modificador expulsa automáticamente los medios, el controlador de miniclase debe borrar esta marca.

CHANGER_CLEANER_ACCESS_NOT_VALID

La marca ELEMENT_STATUS_ACCESS en una estructura de CHANGER_ELEMENT_STATUS para un elemento de transporte de datos no es válida cuando el elemento de transporte contiene un cartucho de limpieza.

CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS

El cambiador requiere que todas las unidades estén vacías (desmontadas) para poder acceder a ellas a través de su puerta. El controlador de miniclase debe establecer esta marca si el cambiador tiene unidades sensibles a la estática que podrían verse afectadas por un operador que obtenga acceso al interior del cambiador, o si el cambiador expulsa automáticamente los medios de sus unidades cuando el operador intenta abrir físicamente la puerta.

CHANGER_VOLUME_IDENTIFICATION

El modificador admite la identificación del volumen. Para un modificador SCSI, esta marca indica si el modificador admite los comandos SEND VOLUME TAG y REQUEST VOLUME ELEMENT ADDRESS SCSI.

El cambiador puede buscar información de volumen. Para un modificador SCSI, esta marca indica si el modificador admite el comando SEND VOLUME TAG SCSI con un código de acción de envío de TRANSLATE.

CHANGER_VOLUME_ASSERT

El cambiador puede comprobar la información del volumen. Para un modificador SCSI, esta marca indica si el modificador admite el comando SEND VOLUME TAG SCSI con un código de acción de envío de ASSERT.

CHANGER_VOLUME_REPLACE

El modificador puede reemplazar la información del volumen. Para un modificador SCSI, esta marca indica si el modificador admite el comando SEND VOLUME TAG SCSI con un código de acción de envío de REPLACE.

CHANGER_VOLUME_UNDEFINE

El modificador puede borrar la información de volumen existente. Para un modificador SCSI, esta marca indica si el modificador admite el comando SEND VOLUME TAG SCSI con un código de acción de envío de UNDEFINE.

CHANGER_SERIAL_NUMBER_VALID

El número de serie notificado por GetProductData es válido y único para todos los modificadores de este tipo. No se garantiza que los números de serie sean únicos en las líneas de proveedores y productos. Si el número de serie del modificador es único según esta definición, el controlador de miniclase debe establecer esta marca y establecer SerialNumber en CHANGER_PRODUCT_DATA en el número de serie.

CHANGER_PREMOUNT_EJECT_REQUIRED

El cambiador requiere un comando explícito emitido a través de un controlador de almacenamiento masivo para expulsar un mecanismo de unidad antes de que el cambiador pueda mover medios de una ranura a la unidad. Por ejemplo, un cambiador con unidades CD-ROM podría requerir que la bandeja se presente al transporte robótico, por lo que un fragmento de soporte podría cargarse en la bandeja durante una operación de montaje. Si el modificador expulsa automáticamente el mecanismo, el controlador de miniclase debe borrar esta marca.

CHANGER_DEVICE_REINITIALIZE_CAPABLE

El modificador puede volver a almacenar su elemento de transporte en respuesta a un comando explícito. El controlador de clase changer llama a ChangerReinitializeUnit para iniciar la recalibración.

CHANGER_KEYPAD_ENABLE_DISABLE

El teclado del modificador se puede habilitar y deshabilitar mediante programación.

CHANGER_RESERVED_BIT

Reservado para indicar las marcas Features1 .

Features1

Indica características adicionales admitidas por el modificador. Este miembro puede tener uno o varios de los valores siguientes juntos ORed bit a bit.

CHANGER_PREDISMOUNT_ALIGN_TO_SLOT

Indica que el transporte debe moverse a la ranura de destino antes de mover el medio de una unidad a la ranura. El bit CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE debe restablecerse si se establece.

CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE

Indica que el transporte debe moverse a la unidad antes de mover los medios de la unidad a una ranura. El bit CHANGER_PREDISMOUNT_ALIGN_TO_SLOT debe restablecerse si se establece.

CHANGER_CLEANER_AUTODISMOUNT

Indica que el cambiador moverá el cartucho de limpieza a su ranura original automáticamente, una vez finalizada la limpieza. Este bit solo se puede establecer si se establece CHANGER_DRIVE_CLEANING_REQUIRED y CHANGER_CLEANER_OPS_NOT_SUPPORTED se restablece.

CHANGER_TRUE_EXCHANGE_CAPABLE

El dispositivo puede manipular dos volúmenes a la vez sin usar elementos de modificador adicionales.

CHANGER_SLOTS_USE_TRAYS

El cambiador utiliza bandejas extraíbles en sus ranuras, que requieren que el medio se coloque en una bandeja y la bandeja se mueva a la posición deseada.

CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR

Indica que al mover el volumen de la unidad a la ranura, el volumen debe volver a la misma ranura desde la que se movió anteriormente a la unidad.

CHANGER_CLEANER_OPS_NOT_SUPPORTED

Indica que el transporte del modificador no puede ser ordenado mediante programación por software por encima del controlador del modificador para mover un cartucho de limpieza a una unidad sucia. Este bit solo se puede establecer si se establece el bit de CHANGER_DRIVE_CLEANING_REQUIRED. Si se establece este bit, se deben restablecer tanto CHANGER_CLEANER_AUTODISMOUNT como CHANGER_CLEANER_SLOT.

CHANGER_IEPORT_USER_CONTROL_OPEN

El modificador requiere que el usuario abra manualmente un IEport cerrado.

CHANGER_IEPORT_USER_CONTROL_CLOSE

El modificador requiere que el usuario cierre manualmente un IEport abierto.

CHANGER_MOVE_EXTENDS_IEPORT

El cambiador extenderá la bandeja automáticamente cada vez que se emita un comando para mover los medios a un IEport.

CHANGER_MOVE_RETRACTS_IEPORT

El cambiador retirará la bandeja automáticamente cada vez que se emita un comando para mover los medios de un IEport.

MoveFromTransport

Indica si el cambiador admite el movimiento de un elemento multimedia de un elemento de transporte a otro elemento de transporte, una ranura de almacenamiento, un IEport o una unidad. Para un cambiador SCSI, se define en la página funcionalidades del dispositivo. El transporte no suele ser el origen o destino para mover o intercambiar medios.

Los autores de llamadas pueden usar las siguientes máscaras para determinar si el modificador puede mover medios a un elemento determinado.

CHANGER_TO_TRANSPORT

El cambiador puede llevar a cabo la operación desde el elemento especificado hasta un transporte.

CHANGER_TO_SLOT

El cambiador puede llevar a cabo la operación desde el elemento especificado a una ranura de almacenamiento.

CHANGER_TO_IEPORT

El cambiador puede llevar a cabo la operación desde el elemento especificado a un IEport.

CHANGER_TO_DRIVE

El cambiador puede llevar a cabo la operación desde el elemento especificado a una unidad.

MoveFromSlot

Indica si el cambiador admite el traslado de un medio de almacenamiento a un elemento de transporte, otra ranura de almacenamiento, un IEport o una unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el movimiento.

MoveFromIePort

Indica si el cambiador admite el movimiento medio de un IEport a un elemento de transporte, una ranura de almacenamiento, otro IEport o una unidad. Para un cambiador SCSI, se define en la página funcionalidades del dispositivo. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el movimiento.

MoveFromDrive

Indica si el cambiador admite el movimiento medio de una unidad a un elemento de transporte, una ranura de almacenamiento, un IEport u otra unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el movimiento.

ExchangeFromTransport

Indica si el cambiador admite el intercambio de medios entre un elemento de transporte y otro elemento de transporte, una ranura de almacenamiento, un IEport o una unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el intercambio.

ExchangeFromSlot

Indica si el cambiador admite el intercambio de medios entre una ranura de almacenamiento y un elemento de transporte, otra ranura de almacenamiento, un IEport o una unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el intercambio.

ExchangeFromIePort

Indica si el cambiador admite el intercambio de medios entre un IEport y un elemento de transporte, una ranura de almacenamiento, otro IEport o una unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el intercambio.

ExchangeFromDrive

Indica si el cambiador admite el intercambio de medios entre una unidad y un elemento de transporte, una ranura de almacenamiento, un IEport u otra unidad. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el intercambio.

LockUnlockCapabilities

Indica qué elementos de un modificador se pueden bloquear o desbloquear mediante programación. Este miembro solo es válido si CHANGER_LOCK_UNLOCK está establecido en Features0.

Los autores de llamadas pueden usar las siguientes máscaras para determinar si el cambiador puede bloquear o desbloquear un elemento determinado.

LOCK_UNLOCK_IEPORT

El cambiador puede bloquear o desbloquear sus IEport(s).

LOCK_UNLOCK_DOOR

El cambiador puede bloquear o desbloquear su puerta.

LOCK_UNLOCK_KEYPAD

El cambiador puede bloquear o desbloquear su teclado.

PositionCapabilities

Indica los elementos a los que un modificador puede colocar su transporte. Los autores de llamadas pueden usar las máscaras descritas en MoveFromTransport para determinar si el modificador admite el posicionamiento del transporte en un elemento determinado. Este miembro solo es válido si CHANGER_POSITION_TO_ELEMENT está establecido en Features0.

Reserved1[2]

Reservado para un uso futuro.

Reserved2[2]

Reservado para un uso futuro.

Comentarios

GET_CHANGER_PARAMETERS contiene los parámetros de un modificador. El controlador de miniclase del modificador asigna y rellena esta estructura cuando lo solicita el controlador de clase del modificador.

Requisitos

Requisito Valor
Header ntddchgr.h

Consulte también

ChangerGetParameters