Freigeben über


PMINIPORT_QUERY_DEVICE_ROUTINE Rückruffunktion (video.h)

HwVidQueryDeviceCallback- verwendet die angegebenen Konfigurationsdaten zum Konfigurieren des Adapters und ggf. zum Ausfüllen fehlender Konfigurationsinformationen in der VIDEO_PORT_CONFIG_INFO Struktur.

Syntax

PMINIPORT_QUERY_DEVICE_ROUTINE PminiportQueryDeviceRoutine;

VP_STATUS PminiportQueryDeviceRoutine(
  PVOID HwDeviceExtension,
  PVOID Context,
  VIDEO_DEVICE_DATA_TYPE DeviceDataType,
  PVOID Identifier,
  ULONG IdentiferLength,
  PVOID ConfigurationData,
  ULONG ConfigurationDataLength,
  PVOID ComponentInformation,
  ULONG ComponentInformationLength
)
{...}

Parameter

HwDeviceExtension

Zeigen Sie auf den Speicherbereich des Miniporttreibers pro Adapter. Weitere Informationen finden Sie unter Geräteerweiterungen.

Context

Zeiger auf den Kontextwert, der von HwVidFindAdaptereingerichtet wurde. In der Regel verweist sie auf den VIDEO_PORT_CONFIG_INFO Puffer oder auf einen Offset in diesem Puffer.

DeviceDataType

Gibt den Typ der angeforderten Konfigurationsinformationen an. Dies ist eine der folgenden:

VpBusData-

VpCmosData-

VpControllerData-

VpMachineData-

VpMonitorData-

Miniporttreiber von x86-Grafikkarten geben in der Regel VpBusData-an, insbesondere für Adapter auf EISA-Bussen. Die werte VpControllerData und VpMonitorData haben nur auf ARC-kompatiblen Plattformen Bedeutung. Die VpCmosData und VpMachineData Werte werden selten verwendet.

Identifier

Zeigen Sie auf den Namen des Geräts, wie von der ARC-Firmware bestimmt. Dieser Parameter sollte nur auf ARC-kompatiblen Plattformen verwendet werden. Andernfalls sollte dieser Zeiger NULL-sein.

IdentiferLength

Gibt die Größe in Byte des gepufferten Bezeichners Zeichenfolgean. Der Wert sollte null sein, wenn der Computer nicht ARC-kompatibel ist.

ConfigurationData

Zeiger auf Hardwarekonfigurationsdaten. Das Format dieser Daten wird durch den angegebenen DeviceDataType- und durch den AdapterInterfaceType Wert im VIDEO_PORT_CONFIG_INFO bestimmt.

ConfigurationDataLength

Gibt die Größe in Byte des ConfigurationData- Puffers an. Dies gibt an, wie viele Informationen aus der Registrierung gesammelt und im ConfigurationData- Puffer gespeichert wurden, der von VideoPortGetDeviceBasezugewiesen wurde.

ComponentInformation

Reserviert für die Systemverwendung.

ComponentInformationLength

Reserviert für die Systemverwendung.

Rückgabewert

HwVidQueryDeviceCallback gibt den Status des Vorgangs zurück.

Bemerkungen

HwVidQueryDeviceCallback- wird in einem Aufruf von VideoPortGetDeviceData aus der HwVidFindAdapter--Funktion des Miniporttreibers übergeben. VideoPortGetDeviceData aufruft HwVidQueryDeviceCallback nach dem Sammeln verfügbarer Konfigurationsinformationen unter der \Registry\Machine\Hardware\Description Knoten der Registrierung.

HwVidQueryDeviceCallback- untersucht die ConfigurationData-, die von der Registrierung von VideoPortGetDeviceDatagesammelt wurde. Sie verwendet diese Informationen, um den Adapter zu konfigurieren und ggf. fehlende Konfigurationsinformationen in der VIDEO_PORT_CONFIG_INFO Struktur auszufüllen.

HwVidQueryDeviceCallback- kann keine Zugriffsbereichswerte übergeben, die in der ConfigurationData- an alle VideoPortRead-Xxx- oder VideoPortWriteXxx direkt übergeben werden; diese Adressen müssen zuerst durch Aufrufen VideoPortGetDeviceBase-zugeordnet werden.

Wenn der ConfigurationData- Puffer keine Zugriffsbereichsinformationen enthält und die HwVidFindAdapter-Funktion des Miniporttreibers funktion noch nicht VideoPortGetBusData (oder VideoPortGetAccessRanges) aufgerufen hat, kann die HwVidQueryDeviceCallback-Funktion VideoPortGetBusDataaufrufen. Zugriffsbereichsinformationen, die von VideoPortGetBusData- zurückgegeben werden, müssen auch an VideoPortVerifyAccessRangesübergeben werden.

Wenn VideoPortVerifyAccessRanges NO_ERROR zurückgibt, kann der Miniporttreiber VideoPortGetDeviceBase- aufrufen, um zugeordnete logische Adressen abzurufen, die zum Kommunizieren mit dem Adapter verwendet werden können, indem der VideoPortRead-Xxx- und/oder VideoPortWriteXxx--Funktionen aufgerufen wird.

Wenn keine Werte für busrelative Zugriffsbereiche abgerufen werden können, indem VideoPortGetDeviceData-, VideoPortGetBusData-oder VideoPortGetAccessRangesaufgerufen wird, kann ein Miniporttreiber einen Satz von vom Treiber bereitgestellten Standardzugriffsbereichswerten verwenden, um den Adapter zu finden. Unter diesen Umständen muss der Miniporttreiber VideoPortVerifyAccessRanges mit den vom Miniport-Treiber bereitgestellten Zugriffsbereichen aufrufen und dann VideoPortGetDeviceBase- nur aufrufen, wenn VideoPortVerifyAccessRanges NO_ERROR zurückgegeben hat. Wenn ein Aufruf von VideoPortVerifyAccessRanges nicht erfolgreich ist, wird bereits ein bestimmter busrelativer Bereich vom Treiber eines anderen Geräts verwendet.

HwVidQueryDeviceCallback sollte seitenfähig gemacht werden.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- video.h (video.h einschließen)

Siehe auch

VideoPortGetAccessRanges-

VideoPortGetBusData-

VideoPortGetDeviceBase-

VideoPortGetDeviceData-

VideoPortVerifyAccessRanges