GET_CHANGER_PARAMETERS struttura (ntddchgr.h)
Recupera le caratteristiche del changer.
Sintassi
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;
Members
Size
La dimensione di questa struttura in byte. Impostare su sizeof(GET_CHANGER_PARAMETERS). In effetti, questo membro indica la versione di questa struttura usata dal driver miniclasse.
NumberTransportElements
Indica il numero di elementi di trasporto nel changer. Per un changer SCSI, questa operazione viene definita nella pagina degli indirizzi dell'elemento. Questo valore è quasi sempre 1, perché la maggior parte dei modificatori ha un singolo elemento di trasporto, che può avere uno o due meccanismi di selezione. Un changer che dispone di due meccanismi di selezione sul trasporto non deve essere rappresentato come avere due trasporti, perché i selezione non possono essere risolti singolarmente. Le librerie multimediali high-end possono avere due e più elementi di trasporto per la tolleranza di errore.
NumberStorageElements
Indica il numero di elementi di archiviazione (slot) nel changer. Per un changer SCSI, questa operazione viene definita nella pagina degli indirizzi dell'elemento. Questo valore rappresenta il numero massimo di slot disponibili per questo changer, inclusi quelli nelle riviste rimovibili, se le riviste sono installate. Se NumberCleanerSlots è 1, NumberStorageElements è 1 minore del numero massimo di slot nel changer.
NumberCleanerSlots
Indica il numero di elementi di archiviazione (slot) per le cartucce più pulite nel cambio. Per un changer SCSI, questo valore non viene segnalato nei dati del senso della modalità, pertanto il driver miniclasse deve specificarlo. Il driver miniclasse deve impostare NumberCleanerSlots su 1 solo se la guida dell'operatore per il changer identifica uno slot specifico come slot più pulito. Se NumberCleanerSlots è 1, FirstCleanerSlotAddress indica l'indirizzo in base zero dello slot in cui deve essere inserito un pulitore di unità. Se il cambio non supporta la pulizia dell'unità spostando a livello di codice la cartuccia più pulita dallo slot a un'unità, il driver miniclasse deve impostare NumberCleanerSlots su 0. NumberCleanerSlots non deve essere maggiore di 1.
NumberIEElements
Indica il numero di elementi IEport che il changer ha per l'inserimento e l'inserimento di supporti. Per un changer SCSI, questa operazione viene definita nella pagina degli indirizzi dell'elemento. Un elemento IEport non deve far parte dello spazio dell'elemento di archiviazione (slot) e deve essere possibile trasportare supporti tra IEport e uno slot usando un comando MOVE MEDIUM SCSI. Se il cambio ha una porta e non un vero IEport, il driver miniclasse deve impostare NumberIEElements su 0.
NumberDataTransferElements
Indica il numero di elementi di trasferimento dati (unità) nel changer. Per un changer SCSI, questa operazione viene definita nella pagina degli indirizzi dell'elemento. A differenza di NumberStorageElements, che indica il numero totale di slot possibili se gli slot sono effettivamente presenti, NumberDataTransferElements indica il numero di unità effettivamente presenti nel changer.
NumberOfDoors
Indica il numero di porte che il cambiatore ha. Per un changer SCSI, questo valore non viene segnalato nei dati del senso della modalità, pertanto il driver miniclasse deve specificarlo. Una porta fornisce l'accesso a tutti i supporti nel changer in una sola volta, a differenza di un IEport che fornisce l'accesso a uno o più supporti, ma non tutti, media. La porta di un cambiatore può essere una porta fisica o una singola rivista che contiene tutti i supporti. Se un changer supporta solo un oggetto IEport per l'inserimento e l'inserimento di supporti, è necessario che NumberOfDoors sia 0.
FirstSlotNumber
Indica il numero utilizzato dal fornitore del changer per identificare il primo elemento di archiviazione (slot) nel changer all'utente finale, contrassegnando una rivista o definendo uno schema di numerazione slot nella guida degli operatori del changer. FirstSlotNumber è in genere 0 o 1, ma può essere il primo indirizzo in un intervallo consecutivo di indirizzi slot definiti dal fornitore.
FirstDriveNumber
Indica il numero utilizzato dal fornitore del changer per identificare il primo elemento di trasferimento dati (unità) nel changer all'utente finale. FirstDriveNumber è in genere 0 o 1, ma può essere il primo indirizzo in un intervallo consecutivo di indirizzi di unità definiti dal fornitore.
FirstTransportNumber
Indica il numero utilizzato dal fornitore del changer per identificare il primo elemento di trasporto (e in genere solo) nel changer all'utente finale. FirstTransportNumber è in genere 0 o 1, ma può essere il primo indirizzo in un intervallo consecutivo di indirizzi di trasporto definiti dal fornitore.
FirstIEPortNumber
Indica il numero usato dal fornitore del changer per identificare il primo (e in genere solo) IEport nel changer all'utente finale. FirstIEPortNumber è in genere 0 o 1, ma può essere il primo indirizzo in un intervallo consecutivo di indirizzi IEport definiti dal fornitore. Se NumberIEElements è 0, FirstIEPortNumber deve essere 0.
FirstCleanerSlotAddress
Indica il numero utilizzato dal fornitore del changer per identificare il primo indirizzo dello slot (e solo) assegnato a una cartuccia più pulita dell'unità all'utente finale. Questo deve essere il valore definito dal fornitore nella guida degli operatori del changer. Ad esempio, se un changer ha 8 slot numerati da 1 a 8 e la guida dell'operatore designa lo slot 8 come slot di pulizia dell'unità, FirstSlotNumber sarà 1 e FirstCleanerSlotAddress sarebbe 8. Se gli stessi 8 slot erano numerati da 0 a 7, FirstSlotNumber sarebbe 0 e FirstCleanerSlotAddress sarebbe 7. Se NumberCleanerSlots è 0, FirstCleanerSlotAddress deve essere 0.
MagazineSize
Indica il numero di slot nelle riviste rimovibili nel changer. Questo membro è valido solo se CHANGER_CARTRIDGE_MAGAZINE è impostato in Features0.
DriveCleanTimeout
Indica due volte il numero massimo di secondi previsti per la pulizia. Le unità del modificatore devono essere pulite dalla sua cartuccia più pulita nella metà del tempo specificato da DriveCleanTimeout. Ad esempio, se un'unità viene in genere pulita in 300 secondi (5 minuti), DriveCleanTimeout deve essere impostato su 600.
Features0
Indica le funzionalità supportate dal modificatore. Questo membro può avere uno o più dei valori seguenti in modo bit per bit ORed insieme.
CHANGER_BAR_CODE_SCANNER_INSTALLED
Il changer supporta un lettore di codice a barre e il lettore è installato. Un driver miniclasse non deve codificare questo flag a meno che non sia sempre installato il lettore di codice della barra del cambio. Se il lettore di codice a barre è facoltativo, il driver miniclasse deve determinare se il lettore è effettivamente installato e impostare di conseguenza il flag.
CHANGER_INIT_ELEM_STAT_WITH_RANGE
Il changer può inizializzare gli elementi all'interno di un intervallo specificato. Per un changer SCSI, questo flag indica se il changer supporta il comando INITIALIZE ELEMENT STATUS WITH RANGE SCSI.
CHANGER_CLOSE_IEPORT
Il changer ha un oggetto IEport e può ritirare a livello di codice LEport.
CHANGER_OPEN_IEPORT
Il changer ha un IEport e può estendere a livello di codice IEport.
CHANGER_STATUS_NON_VOLATILE
Il changer usa memoria nonvolatile per informazioni sullo stato dell'elemento.
CHANGER_EXCHANGE_MEDIA
Supporta il comando EXCHANGE MEDIUM SCSI gestendo due volumi alla volta o usando altri elementi del changer per emulare questa funzionalità.
CHANGER_CLEANER_SLOT
Indica che il cambio ha uno slot specifico designato per una cartuccia più pulita. Se questo flag è impostato, NumberCleanerSlots deve essere uno e FirstCleanerSlotAddress deve specificare l'indirizzo dello slot di pulizia. Questo bit può essere impostato solo se CHANGER_DRIVE_CLEANING_REQUIRED è impostato e CHANGER_CLEANER_OPS_NOT_SUPPORTED viene reimpostato.
CHANGER_LOCK_UNLOCK
La porta del cambio, IEport o il keypad possono essere bloccati o sbloccati a livello di codice. Se questo flag è impostato, LockUnlockCapabilities indica quali elementi possono essere bloccati o sbloccati.
CHANGER_CARTRIDGE_MAGAZINE
Il cambio usa riviste di cartucce rimovibili per alcuni o tutti gli slot di archiviazione.
CHANGER_MEDIUM_FLIP
L'elemento di trasporto del changer supporta il supporto di scorrimento (rotazione). Per un changer SCSI, questo flag riflette il bit di rotazione nella pagina dei parametri geometry del trasporto.
CHANGER_POSITION_TO_ELEMENT
Il changer può posizionare il trasporto in una determinata destinazione. Per un changer SCSI, questo flag indica se il changer supporta il comando POSITION TO ELEMENT SCSI. Se questo flag è impostato, PositionCapabilities indica gli elementi a cui è possibile posizionare il trasporto.
CHANGER_REPORT_IEPORT_STATE
Il changer può segnalare se i supporti sono presenti in IEport. Tale modifica deve avere un sensore nel servizio IEport per rilevare la presenza o l'assenza di supporti.
CHANGER_STORAGE_DRIVE
Il changer può usare un'unità come elemento di archiviazione indipendente; ovvero, può archiviare i supporti nell'unità senza leggerlo. Per un changer SCSI, questo flag riflette lo stato del bit DT nella pagina delle funzionalità del dispositivo.
CHANGER_STORAGE_IEPORT
Il changer può usare un oggetto IEport come elemento di archiviazione indipendente. Per un changer SCSI, questo flag riflette lo stato del bit di I/E nella pagina delle funzionalità del dispositivo.
CHANGER_STORAGE_SLOT
Il modificatore può usare uno slot come elemento di archiviazione indipendente per i supporti. Per un modificatore SCSI, questo flag riflette lo stato del bit ST nella pagina delle funzionalità del dispositivo. Gli slot sono il normale percorso di archiviazione per i supporti, quindi il modificatore deve supportare questa funzionalità.
CHANGER_STORAGE_TRANSPORT
Il modificatore può usare un trasporto come elemento di archiviazione indipendente. Per un modificatore SCSI, questo flag riflette lo stato del bit MT nella pagina delle funzionalità del dispositivo.
CHANGER_DRIVE_CLEANING_REQUIRED
Indica che le unità del modificatore potrebbero segnalare periodicamente codici di senso che indicano che l'unità richiede la pulizia.
CHANGER_PREDISMOUNT_EJECT_REQUIRED
Il modificatore richiede un comando esplicito emesso tramite un driver di archiviazione di massa (nastro, disco o CD-ROM, ad esempio) per espellere supporti da un'unità prima che il modificatore possa spostare il supporto da un'unità a uno slot. Se il modificatore rimuove automaticamente il supporto, il driver miniclasse deve cancellare questo flag.
CHANGER_CLEANER_ACCESS_NOT_VALID
Il flag ELEMENT_STATUS_ACCESS in una struttura di CHANGER_ELEMENT_STATUS per un elemento di trasporto dati non è valido quando l'elemento di trasporto contiene una stampante di pulizia.
CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS
Il modificatore richiede che tutte le unità siano vuote (smontate) prima di poter accedere attraverso la porta. Il driver miniclasse deve impostare questo flag se il modificatore dispone di unità sensibili statiche che potrebbero essere interessate da un operatore che ottiene l'accesso all'interno del modificatore o se il modificatore rimuove automaticamente i supporti dalle relative unità quando l'operatore tenta di aprire fisicamente la porta.
CHANGER_VOLUME_IDENTIFICATION
Il modificatore supporta l'identificazione del volume. Per un modificatore SCSI, questo flag indica se il modificatore supporta i comandi SEND VOLUME TAG e REQUEST VOLUME ELEMENT ADDRESS SCSI.
CHANGER_VOLUME_SEARCH
Il modificatore può cercare informazioni sul volume. Per un modificatore SCSI, questo flag indica se il modificatore supporta il comando SEND VOLUME TAG SCSI con un codice di azione send di TRANSLATE.
CHANGER_VOLUME_ASSERT
Il modificatore può verificare le informazioni sul volume. Per un modificatore SCSI, questo flag indica se il modificatore supporta il comando SEND VOLUME TAG SCSI con un codice di azione send di ASSERT.
CHANGER_VOLUME_REPLACE
Il modificatore può sostituire le informazioni sul volume. Per un modificatore SCSI, questo flag indica se il modificatore supporta il comando SEND VOLUME TAG SCSI con un codice di azione send di REPLACE.
CHANGER_VOLUME_UNDEFINE
Il modificatore può cancellare le informazioni sul volume esistenti. Per un modificatore SCSI, questo flag indica se il modificatore supporta il comando SEND VOLUME TAG SCSI con un codice azione di invio UNDEFINE.
CHANGER_SERIAL_NUMBER_VALID
Il numero di serie segnalato da GetProductData è valido e univoco per tutte le modifiche di questo tipo. I numeri di serie non sono sicuramente univoci tra fornitori e linee di prodotto. Se il numero di serie del modificatore è univoco in base a questa definizione, il driver miniclasse deve impostare questo flag e impostare SerialNumber in CHANGER_PRODUCT_DATA sul numero di serie.
CHANGER_PREMOUNT_EJECT_REQUIRED
Il modificatore richiede un comando esplicito emesso tramite un driver di archiviazione di massa per espellere un meccanismo di unità prima che il modificatore possa spostare i supporti da uno slot all'unità. Ad esempio, un modificatore con unità CD-ROM potrebbe richiedere che il vassoio venga presentato al trasporto robotico in modo che un componente multimediale possa essere caricato sul vassoio durante un'operazione di montaggio. Se il modificatore rimuove automaticamente il meccanismo, il driver miniclasse deve cancellare questo flag.
CHANGER_DEVICE_REINITIALIZE_CAPABLE
Il modificatore può ricalibrare l'elemento di trasporto in risposta a un comando esplicito. Il driver della classe changer chiama ChangerReinitializeUnit per avviare la ricalibrazione.
CHANGER_KEYPAD_ENABLE_DISABLE
Il tastierino del cambio può essere abilitato e disabilitato a livello di codice.
CHANGER_RESERVED_BIT
Riservato per indicare i flag Features1 .
Features1
Indica funzionalità aggiuntive supportate dal modificatore. Questo membro può avere uno o più dei valori seguenti con ORed bit per bit.
CHANGER_PREDISMOUNT_ALIGN_TO_SLOT
Indica che il trasporto deve essere spostato nello slot di destinazione prima di spostare il supporto da un'unità allo slot. Il bit CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE deve essere reimpostato se impostato.
CHANGER_PREDISMOUNT_ALIGN_TO_DRIVE
Indica che il trasporto deve essere spostato nell'unità prima di spostare i supporti dall'unità a uno slot. Il bit CHANGER_PREDISMOUNT_ALIGN_TO_SLOT deve essere reimpostato se impostato.
CHANGER_CLEANER_AUTODISMOUNT
Indica che il cambio sposterà automaticamente la stampante di pulizia nello slot originale, al termine della pulizia. Questo bit può essere impostato solo se CHANGER_DRIVE_CLEANING_REQUIRED è impostato e CHANGER_CLEANER_OPS_NOT_SUPPORTED viene reimpostato.
CHANGER_TRUE_EXCHANGE_CAPABLE
Il dispositivo può modificare due volumi alla volta senza usare altri elementi del modificatore.
CHANGER_SLOTS_USE_TRAYS
Il cambio utilizza i vassoi rimovibili nei relativi slot, che richiedono che il supporto venga posizionato in un vassoio e il vassoio spostato nella posizione desiderata.
CHANGER_RTN_MEDIA_TO_ORIGINAL_ADDR
Indica che quando si sposta il volume dall'unità allo slot, il volume deve tornare nello stesso slot da cui è stato spostato in precedenza nell'unità.
CHANGER_CLEANER_OPS_NOT_SUPPORTED
Indica che il trasporto del modificatore non può essere eseguito a livello di codice dal software sopra il driver del modificatore per spostare una stampante di pulizia in un'unità dirty. Questo bit può essere impostato solo se il bit CHANGER_DRIVE_CLEANING_REQUIRED è impostato. Se questo bit è impostato, è necessario reimpostare sia CHANGER_CLEANER_AUTODISMOUNT che CHANGER_CLEANER_SLOT.
CHANGER_IEPORT_USER_CONTROL_OPEN
Il modificatore richiede all'utente di aprire manualmente un IEport chiuso.
CHANGER_IEPORT_USER_CONTROL_CLOSE
Il modificatore richiede all'utente di chiudere manualmente un IEport aperto.
CHANGER_MOVE_EXTENDS_IEPORT
Il modificatore estenderà automaticamente l'area di notifica ogni volta che viene eseguito un comando per spostare i supporti in un IEport.
CHANGER_MOVE_RETRACTS_IEPORT
Il modificatore ritrarrà automaticamente l'area di notifica ogni volta che viene eseguito un comando per spostare i supporti da un IEport.
MoveFromTransport
Indica se il modificatore supporta lo spostamento di un elemento multimediale da un elemento di trasporto a un altro elemento di trasporto, uno slot di archiviazione, un IEport o un'unità. Per un modificatore SCSI, questo valore viene definito nella pagina delle funzionalità del dispositivo. Il trasporto non è in genere l'origine o la destinazione per lo spostamento o lo scambio di supporti.
I chiamanti possono usare le maschere seguenti per determinare se il modificatore può spostare i supporti in un determinato elemento.
CHANGER_TO_TRANSPORT
Il modificatore può eseguire l'operazione dall'elemento specificato a un trasporto.
CHANGER_TO_SLOT
Il modificatore può eseguire l'operazione dall'elemento specificato a uno slot di archiviazione.
CHANGER_TO_IEPORT
Il modificatore può eseguire l'operazione dall'elemento specificato a un IEport.
CHANGER_TO_DRIVE
Il modificatore può eseguire l'operazione dall'elemento specificato a un'unità.
MoveFromSlot
Indica se il modificatore supporta lo spostamento di un supporto da uno slot di archiviazione a un elemento di trasporto, un altro slot di archiviazione, un IEport o un'unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo spostamento.
MoveFromIePort
Indica se il modificatore supporta lo spostamento di un supporto da un IEport a un elemento di trasporto, uno slot di archiviazione, un altro IEport o un'unità. Per un modificatore SCSI, questo valore viene definito nella pagina delle funzionalità del dispositivo. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo spostamento
MoveFromDrive
Indica se il modificatore supporta lo spostamento di un supporto da un'unità a un elemento di trasporto, uno slot di archiviazione, un IEport o un'altra unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo spostamento.
ExchangeFromTransport
Indica se il modificatore supporta lo scambio di supporto tra un elemento di trasporto e un altro elemento di trasporto, uno slot di archiviazione, un IEport o un'unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo scambio.
ExchangeFromSlot
Indica se il modificatore supporta lo scambio di supporto tra uno slot di archiviazione e un elemento di trasporto, un altro slot di archiviazione, un IEport o un'unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo scambio.
ExchangeFromIePort
Indica se il modificatore supporta lo scambio di supporto tra un IEport e un elemento di trasporto, uno slot di archiviazione, un altro IEport o un'unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo scambio.
ExchangeFromDrive
Indica se il modificatore supporta lo scambio di supporto tra un'unità e un elemento di trasporto, uno slot di archiviazione, un IEport o un'altra unità. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta lo scambio.
LockUnlockCapabilities
Indica quali elementi di un modificatore possono essere bloccati o sbloccati a livello di codice. Questo membro è valido solo se CHANGER_LOCK_UNLOCK è impostato in Features0.
I chiamanti possono usare le maschere seguenti per determinare se il modificatore può bloccare o sbloccare un particolare elemento.
LOCK_UNLOCK_IEPORT
Il modificatore può bloccare o sbloccare i relativi IEport.
LOCK_UNLOCK_DOOR
Il cambio può bloccare o sbloccare la porta.
LOCK_UNLOCK_KEYPAD
Il modificatore può bloccare o sbloccare il tastierino.
PositionCapabilities
Indica gli elementi a cui un modificatore può posizionare il trasporto. I chiamanti possono usare le maschere descritte in MoveFromTransport per determinare se il modificatore supporta il posizionamento del trasporto in un particolare elemento. Questo membro è valido solo se CHANGER_POSITION_TO_ELEMENT è impostato in Features0.
Reserved1[2]
Riservato per usi futuri.
Reserved2[2]
Riservato per usi futuri.
Commenti
GET_CHANGER_PARAMETERS contiene i parametri di un modificatore. Il driver di miniclasse del modificatore alloca e compila questa struttura quando richiesto dal driver di classe del modificatore.
Requisiti
Requisito | Valore |
---|---|
Intestazione | ntddchgr.h |