IDDCX_ADAPTER_FLAGS Enumeration (iddcx.h)
IDDCX_ADAPTER_FLAGS gibt die booleschen Funktionskennzeichnungen für einen indirekten Anzeigeadapter an.
Syntax
typedef enum IDDCX_ADAPTER_FLAGS {
IDDCX_ADAPTER_FLAGS_NONE = 0,
IDDCX_ADAPTER_FLAGS_USE_SMALLEST_MODE = 0x1,
IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS = 0x2,
IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER = 0x4,
IDDCX_ADAPTER_FLAGS_PREFER_PHYSICALLY_CONTIGUOUS = 0x8,
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION = 0x10,
IDDCX_ADAPTER_FLAGS_PREFER_PRECISE_PRESENT_REGIONS = 0x20,
IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 = 0x40,
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_TARGET_MODES_MONITOR_COMPATIBLE = 0x80
} ;
Konstanten
IDDCX_ADAPTER_FLAGS_NONE Wert: 0 Gibt an, dass für den Adapter keine Kennzeichnungen festgelegt sind. |
IDDCX_ADAPTER_FLAGS_USE_SMALLEST_MODE Wert: 0x1 Das indirekte Anzeigemodell unterstützt automatisch virtuelle Betriebssystemmodi, sodass das Betriebssystem Änderungen am Modus nahtlos mithilfe der Desktop Window Manager -Skalierung (DWM) pro Frame durchführen kann, ohne dass sich ein Anzeigemodus ändert. Ein Nachteil tritt auf, wenn ein kleinerer Desktopmodus vom Benutzer verwendet wird: Das dem Treiber bereitgestellte Desktopimage ist größer als die Desktopgröße, wodurch die Bandbreite codiert und übertragen wird. Dieser Enumerationswert weist das Betriebssystem an, die kleinste Größe der Desktopoberfläche zu verwenden, wenn der Desktopmodus geändert wird. Eine Lösung mit großem Verarbeitungsaufwand oder eingeschränkter Übertragungsbandbreite verwendet in der Regel dieses Kennzeichen, um die Größe des Desktopimages zu verringern, um so viel wie möglich zu verarbeiten. Wenn Sie dieses Kennzeichen festlegen, wird bei jeder Änderung der Desktopauflösung ein Modus geändert. |
IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS Wert: 0x2 Dieses Flag wurde ab iddCx v1.7 veraltet. Treiber können dieses Kennzeichen weiterhin für IddCx 1.7 und höher festlegen, haben aber keine Auswirkungen. Wenn ein Treiber für die Ausführung auf pre-IddCx 1.7 ausgelegt ist und dieses Kennzeichen festlegt, muss dieser Treiber über die Logik zum Verarbeiten der Verschiebungen verfügen. andernfalls werden benutzern visuelle Probleme angezeigt, wenn sie auf Vor-IddCx 1.7-Systemen ausgeführt werden. Gibt an, ob der Treiber Verschiebungsbereiche verwenden kann, die vom Betriebssystem bereitgestellt werden, zusätzlich zu schmutzigen Rects beim Codieren des Bilds. Der Treiber sollte dies nur auf "TRUE" festlegen, wenn er die Verschiebungsregionen verwendet, da das Betriebssystem beim Generieren dieser zusätzlichen Ressourcen zu kosten kommt. Wenn der Treiber diesen Wert auf FALSE festlegt, konvertiert das Betriebssystem alle Bewegungsbereiche in schmutzige Rechtecke. |
IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER Wert: 0x4 Gibt an, ob der Treiber ein Remotesitzungstreiber ist, der Remotesitzungsmonitore unterstützt, anstatt Konsolensitzungsmonitore. Ein Remotesitzungstreiber kann Konsolensitzungsmonitore nicht unterstützen, und ein Konsolensitzungstreiber kann Remotesitzungsmonitore nicht unterstützen. Wird ab IddCx, Version 1.4, unterstützt. |
IDDCX_ADAPTER_FLAGS_PREFER_PHYSICALLY_CONTIGUOUS Wert: 0x8 Gibt an, dass der Treiber den physischen zusammenhängenden Speicher vorzieht, der für Swapchainpuffer verwendet werden soll, sodass der Treiber die Puffer direkt ausscannen kann, ohne dass eine Zwischenkopie erforderlich ist. Wird ab IddCx, Version 1.6, unterstützt. |
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION Wert: 0x10 Gibt an, dass der Treiber alle Cursorpositionsänderungen empfangen möchte; Das heißt, es möchte sowohl Mauseingaben empfangen, die in die Remotesitzung vom Remoteclient eingefügt werden, als auch prozedurale Verschiebungen, die durch einen API-Aufruf von einer Anwendung oder dem Betriebssystem auf dem Server verursacht werden. Dieses Kennzeichen ist nur gültig, wenn es mit IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVERkombiniert wird. IddCxAdapterInitAsync- schlägt fehl, wenn IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION ohne IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVERfestgelegt wird. Wird ab IddCx, Version 1.7, unterstützt. |
IDDCX_ADAPTER_FLAGS_PREFER_PRECISE_PRESENT_REGIONS Wert: 0x20 Ein Treiber, der dieses Kennzeichen festlegt, fordert das Betriebssystem auf, schmutzige Regionen der Desktopupdates genauer nachzuverfolgen. Diese genauere Nachverfolgung hat einen geringen CPU-Auslastungsaufwand, sodass Treiber dieses Kennzeichen nur festlegen sollten, wenn kleinere schmutzige Regionen für den Treiber von Vorteil sind. Wird ab IddCx, Version 1.8, unterstützt. |
IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 Gibt an, dass der Treiber IEEE-Gleitkomma-Gleitkommaoberflächen mit halber Genauigkeit (FP16) verarbeiten kann. Ein Treiber sollte IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 auch für Adapter festlegen, die HDR oder SDR WCG nicht unterstützen. Das Betriebssystem sendet HDR- oder SDR-WC-Oberflächen und -Modi an den Treiber, wenn die richtige Kombination aus Monitor, Zielfunktionen, O-Einstellungen usw. vorhanden ist. Daher muss ein Treiber, der IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 festlegt, auch die IddCx-Version 1.10-Funktionen unterstützen, die dies ermöglichen. Ein Treiber, der HDR10 unterstützt, muss in der Lage sein: * Empfangen und Verarbeiten von FP16-Formatoberflächen innerhalb einer Swapchain. * Anwenden der angegebenen SDR-Weißebene auf Mauscursor. Konsolentreiber müssen auch: * Verwenden Sie die neue 3x4-Matrixfarbtransformation. * Akzeptieren und Verwenden von HDR-Metadaten. Remotetreiber müssen auch: * Geben Sie farbmetrische und SDR-Weißebene an, wenn erforderlich. Wird ab IddCx, Version 1.10, unterstützt. Siehe Anmerkungen. |
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_TARGET_MODES_MONITOR_COMPATIBLE Wert: 0x80 Nur Remotetreiber können dieses Flag festlegen. Remotetreiber können IDDCX_ADAPTER_FLAGS_ALL_TARGET_MODES_MONITOR_COMPATIBLE verwenden, damit sie Zielmodi angeben können, die nicht Teil eines Monitordeskriptors sind. Normalerweise wählt das Betriebssystem einen Modus aus, der darauf basiert, dass er sowohl in der Monitor- als auch in der Zielmodusliste enthalten ist, entweder über EVT_IDD_CX_PARSE_MONITOR_DESCRIPTION oder EVT_IDD_CX_MONITOR_GET_DEFAULT_DESCRIPTION_MODES, wenn kein Deskriptor verfügbar ist, und die Zielmodusliste. Remoteszenarien erfordern möglicherweise Modi, die sich nicht im Deskriptor befinden. Stattdessen kann der Treiber Zielmodi verwenden, um sie zu beschreiben und für das Betriebssystem anzugeben, dass er nicht auf Monitormodi überprüft werden sollte. Wenn ein Remotetreiber dieses Kennzeichen festlegt, gibt er an, dass jeder in Aufrufen von EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 gemeldete Zielmodus und IddCxMonitorUpdateModes2- garantiert mit dem aktuell verbundenen Monitor kompatibel ist. Das Betriebssystem ruft dann nicht EVT_IDD_CX_PARSE_MONITOR_DESCRIPTION2 oder EVT_IDD_CX_MONITOR_GET_DEFAULT_DESCRIPTION_MODESauf. Wird ab IddCx, Version 1.10, unterstützt. Siehe Anmerkungen. |
Bemerkungen
Um festzustellen, ob das Betriebssystem Treibereinstellungen IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 oder IDDCX_ADAPTER_FLAGS_ALL_TARGET_MODES_MONITOR_COMPATIBLEakzeptiert, sollte der Treiber das IDD_IS_FUNCTION_AVAILABLE Makro verwenden, um zu überprüfen, ob eine der DDIs der Version 1.10 vorhanden ist; z. B. IDD_IS_FUNCTION_AVAILABLE(IddCxSwapChainReleaseAndAcquireBuffer2)
. Dieses Makro wertet auf einem v1.10-unterstützten Betriebssystem auf WAHR und andernfalls "false" aus. Weitere Informationen finden Sie unter Updates für IddCx-Versionen 1.10 und höher.
Anforderungen
Anforderung | Wert |
---|---|
Header- | iddcx.h |