VIDEO_HW_INITIALIZATION_DATA-Struktur (video.h)
Die VIDEO_HW_INITIALIZATION_DATA-Struktur gibt die Einstiegspunkte und Speicheranforderungen für den Miniporttreiber an. Diese Struktur wird im Stapel erstellt und von der DriverEntry-Funktion des Miniporttreibers initialisiert.
Syntax
typedef struct _VIDEO_HW_INITIALIZATION_DATA {
ULONG HwInitDataSize;
INTERFACE_TYPE AdapterInterfaceType;
PVIDEO_HW_FIND_ADAPTER HwFindAdapter;
PVIDEO_HW_INITIALIZE HwInitialize;
PVIDEO_HW_INTERRUPT HwInterrupt;
PVIDEO_HW_START_IO HwStartIO;
ULONG HwDeviceExtensionSize;
ULONG StartingDeviceNumber;
PVIDEO_HW_RESET_HW HwResetHw;
PVIDEO_HW_TIMER HwTimer;
PVIDEO_HW_START_DMA HwStartDma;
PVIDEO_HW_POWER_SET HwSetPowerState;
PVIDEO_HW_POWER_GET HwGetPowerState;
PVIDEO_HW_GET_CHILD_DESCRIPTOR HwGetVideoChildDescriptor;
PVIDEO_HW_QUERY_INTERFACE HwQueryInterface;
ULONG HwChildDeviceExtensionSize;
PVIDEO_ACCESS_RANGE HwLegacyResourceList;
ULONG HwLegacyResourceCount;
PVIDEO_HW_LEGACYRESOURCES HwGetLegacyResources;
BOOLEAN AllowEarlyEnumeration;
ULONG Reserved;
} VIDEO_HW_INITIALIZATION_DATA, *PVIDEO_HW_INITIALIZATION_DATA;
Member
HwInitDataSize
Die Größe dieser Struktur in Byte. In der Tat gibt dies die Version von VIDEO_HW_INITIALIZATION_DATA an, die verwendet wird.
AdapterInterfaceType
Wird derzeit vom Videoport ignoriert und sollte null initialisiert bleiben.
HwFindAdapter
Zeiger auf die HwVidFindAdapter-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwInitialize
Zeiger auf die HwVidInitialize-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwInterrupt
Zeiger auf die HwVidInterrupt-Funktion des Miniporttreibers, die nur erforderlich ist, wenn der Adapter des Miniporttreibers Interrupts generiert. Andernfalls muss dieser Zeiger NULL sein.
HwStartIO
Zeiger auf die HwVidStartIO-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwDeviceExtensionSize
Gibt die Größe des Speichers in Byte an, den der Miniporttreiber für seine private, adapterspezifische Geräteerweiterung benötigt. Ein Miniporttreiber verwendet diesen Speicher, um vom Treiber bestimmte Informationen pro Adapter zu speichern, z. B. die zugeordneten logischen Adressbereiche für die Adapterregister und alle Kontextinformationen, die der Treiber zu seinen E/A-Vorgängen verwaltet.
Ein Zeiger auf die Geräteerweiterung wird in jedem Aufruf der Standardfunktionen des Miniporttreibers mit Ausnahme von DriverEntry, HwVidSynchronizeExecutionCallback und allen SvgaHwIoPortXxx-Funktionen übergeben. Der Videoporttreiber weist den Speicher für die Geräteerweiterung zu und initialisiert ihn mit Nullen, bevor er an die HwVidFindAdapter-Funktion des Miniporttreibers übergeben wird.
StartingDeviceNumber
Muss auf 0 (null) festgelegt werden.
HwResetHw
Zeiger auf die HwVidResetHw-Funktion des Miniporttreibers, die für jeden Miniporttreiber eines Adapters erforderlich ist, der bei einem soften Neustart des Computers nicht vollständig zurückgesetzt wird. Treiber von SVGA-Adaptern, die bei Empfang eines INT10-Befehls vom Typ MODE3 vollständig auf einen VGA-Standardzeichenmodus zurückgesetzt werden, legen diesen in der Regel auf NULL fest.
HwTimer
Zeiger auf die HwVidTimer-Funktion eines Miniporttreibers, die optional ist. Dieser Zeiger kann NULL sein.
HwStartDma
Ist für das System reserviert.
HwSetPowerState
Zeiger auf die HwVidSetPowerState-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwGetPowerState
Zeiger auf die HwVidGetPowerState-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwGetVideoChildDescriptor
Zeiger auf die HwVidGetVideoChildDescriptor-Funktion des Miniporttreibers, die für alle Miniporttreiber erforderlich ist.
HwQueryInterface
Zeiger auf die HwVidQueryInterface-Funktion des Miniporttreibers. Dies kann optional in einem Miniporttreiber implementiert werden, der externe Programmierschnittstellen für die geräteübergreifende Kommunikation unterstützt, z. B. I2C-Unterstützung (oder I²C) für MPEG-Decoder. Andernfalls sollte dieser Member auf NULL festgelegt werden.
HwChildDeviceExtensionSize
Die Größe der Geräteerweiterung in Byte, die dem Anzeigeausgabegerät zugeordnet ist. Der Miniporttreiber sollte dieses Element nur ausfüllen, wenn der Miniporttreiber die Überwachungskonfigurationsdaten getrennt von der Konfiguration des Adapterboards verwalten muss.
HwLegacyResourceList
Zeiger auf ein Array von VIDEO_ACCESS_RANGE Strukturen. Jede Struktur beschreibt einen E/A-Port des Geräts oder einen Arbeitsspeicherbereich für die Grafikkarte, die nicht im PCI-Konfigurationsbereich aufgeführt ist.
HwLegacyResourceCount
Die Anzahl der Elemente im Array, auf die HwLegacyResourceList verweist.
HwGetLegacyResources
Zeiger auf die HwVidLegacyResources-Funktion des Miniporttreibers, die es dem Treiber ermöglicht, seine Legacyressourcen basierend auf seinen Geräte- und Anbieter-IDs anzugeben.
AllowEarlyEnumeration
Ermöglicht es dem Miniporttreiber, seine untergeordneten Geräte aufzulisten, bevor der Adapter gestartet wird. Das heißt, der Videoporttreiber kann HwVidGetVideoChildDescriptor vor HwVidFindAdapter aufrufen, wenn dieser Member auf TRUE festgelegt ist.
Reserved
Ist für das System reserviert.
Hinweise
Die DriverEntry-Funktion eines Miniporttreibers muss diese Struktur mit Nullen initialisieren, bevor relevante Werte in einem Element festgelegt werden.
Der Videoporttreiber ignoriert die Elemente HwLegacyResourceCount und HwLegacyResourceList , wenn HwGetLegacyResources mit einem Zeiger auf eine HwVidLegacyResources-Implementierung initialisiert wird.
Anforderungen
Anforderung | Wert |
---|---|
Header | video.h (Video.h einschließen) |