struttura GET_CHANGER_PARAMETERS (ntddchgr.h)
Recupera le caratteristiche del modificatore.
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;
Membri
Size
Dimensione di questa struttura in byte. Impostare su sizeof(GET_CHANGER_PARAMETERS). In effetti, questo membro indica la versione di questa struttura utilizzata dal driver miniclasse.
NumberTransportElements
Indica il numero di elementi di trasporto nel modificatore. Per un modificatore SCSI, questo valore viene definito nella pagina dell'indirizzo dell'elemento. Questo valore è quasi sempre 1, perché la maggior parte delle modifiche ha un singolo elemento di trasporto, che può avere uno o due meccanismi di selezione. Un modificatore che dispone di due meccanismi di selezione sul trasporto non deve essere rappresentato come con due trasporti, perché i picker non possono essere risolti singolarmente. Le librerie multimediali di fascia alta possono avere elementi di trasporto duale e multipli per la tolleranza di errore.
NumberStorageElements
Indica il numero di elementi di archiviazione (slot) nel modificatore. Per un modificatore SCSI, questo valore viene definito nella pagina dell'indirizzo dell'elemento. Questo valore rappresenta il numero massimo di slot disponibili per questo modificatore, inclusi quelli in riviste rimovibili, indipendentemente dal fatto che le riviste siano installate. Se numberCleanerSlots è 1, NumberStorageElements è 1 minore del numero massimo di slot nel modificatore.
NumberCleanerSlots
Indica il numero di elementi di archiviazione (slot) per le cartucce più pulite nel modificatore. Per un modificatore SCSI, questo valore non viene segnalato nei dati del senso della modalità, quindi il driver miniclasse deve fornirlo. Il driver miniclasse deve impostare NumberCleanerSlots su 1 solo se la guida dell'operatore per il modificatore 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 modificatore non supporta la pulizia delle unità spostando a livello di codice la stampante 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 modificatore ha per l'inserimento e l'espulso di supporti. Per un modificatore SCSI, questo valore viene definito nella pagina dell'indirizzo 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 modificatore ha una porta e non un vero IEport, il driver miniclasse deve impostare NumberIEElements su 0.
NumberDataTransferElements
Indica il numero di elementi di trasferimento dei dati (unità) nel modificatore. Per un modificatore SCSI, questo valore viene definito nella pagina dell'indirizzo 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 modificatore.
NumberOfDoors
Indica il numero di porte di cui dispone il modificatore. Per un modificatore SCSI, questo valore non viene segnalato nei dati del senso della modalità, quindi il driver miniclasse deve fornirlo. Una porta consente l'accesso a tutti i supporti nel modificatore contemporaneamente, a differenza di un IEport che fornisce l'accesso a uno o più supporti, ma non a tutti. La porta di un cambiapersone può essere una porta anteriore fisica o una singola rivista che contiene tutti i supporti. Se un modificatore supporta solo un IEport per l'inserimento e l'inserimento di supporti, il NumberOfDoors deve essere 0.
FirstSlotNumber
Indica il numero utilizzato dal fornitore del modificatore per identificare il primo elemento di archiviazione (slot) nel modificatore all'utente finale, contrassegnando una rivista o definendo uno schema di numerazione degli slot nella guida degli operatori del modificatore. 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 modificatore per identificare il primo elemento di trasferimento dati (unità) nel modificatore 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 modificatore per identificare il primo elemento di trasporto (e in genere solo) nel modificatore 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 modificatore per identificare il primo (e in genere solo) IEport nel modificatore 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, deve essere 0 anche FirstIEPortNumber.
FirstCleanerSlotAddress
Indica il numero utilizzato dal fornitore del modificatore per identificare il primo indirizzo (e solo) dello slot assegnato a una stampante più pulita per l'utente finale. Deve essere il valore definito dal fornitore nella guida degli operatori del modificatore. Ad esempio, se un modificatore ha 8 slot numerati da 1 a 8 e la guida dell'operatore designa lo slot 8 come slot di pulizia 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 cambio. Questo membro è valido solo se CHANGER_CARTRIDGE_MAGAZINE è impostato in Features0.
DriveCleanTimeout
Indica il doppio del numero massimo di secondi previsti per la pulizia. Le unità del modificatore devono essere pulite dalla sua stampante più pulita in metà tempo specificato da DriveCleanTimeout. Ad esempio, se un'unità viene in genere pulita in 300 secondi (5 minuti), DriveCleanTimeout deve essere impostata su 600.
Features0
Indica le funzionalità supportate dal modificatore. Questo membro può avere uno o più dei valori seguenti con ORed bit per bit.
CHANGER_BAR_CODE_SCANNER_INSTALLED
Il modificatore supporta un lettore di codice a barre e il lettore è installato. Un driver miniclasse non deve impostare come hardcoded questo flag a meno che non sia sempre installato il lettore di codice a barre del modificatore. Se il lettore di codice a barre è facoltativo, il driver miniclasse deve determinare se il lettore è effettivamente installato e impostare il flag di conseguenza.
CHANGER_INIT_ELEM_STAT_WITH_RANGE
Il modificatore può inizializzare gli elementi all'interno di un intervallo specificato. Per un modificatore SCSI, questo flag indica se il modificatore supporta il comando INITIALIZE ELEMENT STATUS WITH RANGE SCSI.
CHANGER_CLOSE_IEPORT
Il modificatore ha un IEport e può ritirare l'IEport a livello di codice.
CHANGER_OPEN_IEPORT
Il modificatore ha un IEport e può estendere internet Explorer a livello di codice.
CHANGER_STATUS_NON_VOLATILE
Il modificatore usa memoria non volatile per informazioni sullo stato dell'elemento.
CHANGER_EXCHANGE_MEDIA
Supporta il comando EXCHANGE MEDIUM SCSI gestendo due volumi alla volta o utilizzando altri elementi del modificatore per emulare questa funzionalità.
CHANGER_CLEANER_SLOT
Indica che il modificatore ha uno slot specifico designato per una stampante più pulita. Se questo flag è impostato, NumberCleanerSlots deve essere uno e FirstCleanerSlotAddress deve specificare l'indirizzo dello slot più pulito. 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, l'IEport o il tastierino del modificatore 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 utilizza riviste di munizioni rimovibili per alcuni o tutti gli slot di archiviazione.
CHANGER_MEDIUM_FLIP
L'elemento di trasporto del modificatore supporta supporti di scorrimento (rotazione). Per un modificatore SCSI, questo flag riflette il bit di rotazione nella pagina dei parametri della geometria di trasporto.
CHANGER_POSITION_TO_ELEMENT
Il modificatore può posizionare il trasporto in una destinazione specifica. Per un modificatore SCSI, questo flag indica se il modificatore 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 modificatore può segnalare se i supporti sono presenti in IEport. Tale modificatore deve avere un sensore in IEport per rilevare la presenza o l'assenza di supporti.
CHANGER_STORAGE_DRIVE
Il modificatore può usare un'unità come elemento di archiviazione indipendente; ovvero, può archiviare i supporti nell'unità senza leggerlo. Per un modificatore SCSI, questo flag riflette lo stato del bit DT nella pagina delle funzionalità del dispositivo.
CHANGER_STORAGE_IEPORT
Il modificatore può usare un IEport come elemento di archiviazione indipendente. Per un modificatore 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 espelle 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 munizione di pulizia.
CHANGER_DRIVE_EMPTY_ON_DOOR_ACCESS
Il modificatore richiede che tutte le unità siano vuote (smontate) prima di poter accedere tramite la porta. Il driver miniclasse deve impostare questo flag se il modificatore dispone di unità sensibili a statiche che potrebbero essere interessate da un operatore che ottiene l'accesso all'interno del modificatore o se il modificatore espelle automaticamente i supporti dalle 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 di invio 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 di azione di invio UNDEFINE.
CHANGER_SERIAL_NUMBER_VALID
Il numero di serie segnalato da GetProductData è valido e univoco per tutti i modificatori di questo tipo. Non è garantito che i numeri di serie siano 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 supporti da uno slot all'unità. Ad esempio, un cambio 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 modificatore 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 elementi aggiuntivi del modificatore.
CHANGER_SLOTS_USE_TRAYS
Il cambio utilizza 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 la barra ogni volta che viene eseguito un comando per spostare i supporti in un IEport.
CHANGER_MOVE_RETRACTS_IEPORT
Il modificatore ritrarrà automaticamente la barra 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 utilizzare 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 medio 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 supporti 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 supporti 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 supporti 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 supporti 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 utilizzare 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 uso futuro.
Reserved2[2]
Riservato per uso futuro.
Osservazioni
GET_CHANGER_PARAMETERS contiene i parametri di un modificatore. Il driver della miniclasse del modificatore alloca e compila questa struttura quando richiesto dal driver di classe del modificatore.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ntddchgr.h |