diff --git a/include/d3d11.idl b/include/d3d11.idl index 73a6ca0d64a..ba2cad840d2 100644 --- a/include/d3d11.idl +++ b/include/d3d11.idl @@ -345,6 +345,78 @@ typedef enum D3D11_VIDEO_PROCESSOR_ROTATION D3D11_VIDEO_PROCESSOR_ROTATION_270 = 3, } D3D11_VIDEO_PROCESSOR_ROTATION; +typedef enum D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS +{ + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BLEND = 0x01, + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_BOB = 0x02, + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_ADAPTIVE = 0x04, + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_DEINTERLACE_MOTION_COMPENSATION = 0x08, + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_INVERSE_TELECINE = 0x10, + D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS_FRAME_RATE_CONVERSION = 0x20, +} D3D11_VIDEO_PROCESSOR_PROCESSOR_CAPS; + +typedef enum D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS +{ + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32 = 0x00000001, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_22 = 0x00000002, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2224 = 0x00000004, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_2332 = 0x00000008, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_32322 = 0x00000010, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_55 = 0x00000020, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_64 = 0x00000040, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_87 = 0x00000080, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_222222222223 = 0x00000100, + D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS_OTHER = 0x80000000, +} D3D11_VIDEO_PROCESSOR_ITELECINE_CAPS; + +typedef enum D3D11_CONTENT_PROTECTION_CAPS +{ + D3D11_CONTENT_PROTECTION_CAPS_SOFTWARE = 0x00000001, + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE = 0x00000002, + D3D11_CONTENT_PROTECTION_CAPS_PROTECTION_ALWAYS_ON = 0x00000004, + D3D11_CONTENT_PROTECTION_CAPS_PARTIAL_DECRYPTION = 0x00000008, + D3D11_CONTENT_PROTECTION_CAPS_CONTENT_KEY = 0x00000010, + D3D11_CONTENT_PROTECTION_CAPS_FRESHEN_SESSION_KEY = 0x00000020, + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK = 0x00000040, + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPTED_READ_BACK_KEY = 0x00000080, + D3D11_CONTENT_PROTECTION_CAPS_SEQUENTIAL_CTR_IV = 0x00000100, + D3D11_CONTENT_PROTECTION_CAPS_ENCRYPT_SLICEDATA_ONLY = 0x00000200, + D3D11_CONTENT_PROTECTION_CAPS_DECRYPTION_BLT = 0x00000400, + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECT_UNCOMPRESSED = 0x00000800, + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_PROTECTED_MEMORY_PAGEABLE = 0x00001000, + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_TEARDOWN = 0x00002000, + D3D11_CONTENT_PROTECTION_CAPS_HARDWARE_DRM_COMMUNICATION = 0x00004000, +} D3D11_CONTENT_PROTECTION_CAPS; + +typedef enum D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE +{ + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_UNDEFINED = 0x00000000, + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_16_235 = 0x00000001, + D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE_0_255 = 0x00000002, +} D3D11_VIDEO_PROCESSOR_NOMINAL_RANGE; + +typedef enum D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE +{ + D3D11_PROCESSIDTYPE_UNKNOWN = 0x00000000, + D3D11_PROCESSIDTYPE_DWM = 0x00000001, + D3D11_PROCESSIDTYPE_HANDLE = 0x00000002, +} D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE; + +typedef enum D3D11_BUS_TYPE +{ + D3D11_BUS_TYPE_OTHER = 0x00000000, + D3D11_BUS_TYPE_PCI = 0x00000001, + D3D11_BUS_TYPE_PCIX = 0x00000002, + D3D11_BUS_TYPE_PCIEXPRESS = 0x00000003, + D3D11_BUS_TYPE_AGP = 0x00000004, + D3D11_BUS_IMPL_MODIFIER_INSIDE_OF_CHIPSET = 0x00010000, + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_CHIP = 0x00020000, + D3D11_BUS_IMPL_MODIFIER_TRACKS_ON_MOTHER_BOARD_TO_SOCKET = 0x00030000, + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR = 0x00040000, + D3D11_BUS_IMPL_MODIFIER_DAUGHTER_BOARD_CONNECTOR_INSIDE_OF_NUAE = 0x00050000, + D3D11_BUS_IMPL_MODIFIER_NON_STANDARD = 0x80000000, +} D3D11_BUS_TYPE; + typedef struct D3D11_BOX { UINT left; @@ -2029,6 +2101,199 @@ typedef struct D3D11_QUERY_DATA_PIPELINE_STATISTICS UINT64 CSInvocations; } D3D11_QUERY_DATA_PIPELINE_STATISTICS; +typedef struct D3D11_AUTHENTICATED_CONFIGURE_INPUT +{ + D3D11_OMAC omac; + GUID ConfigureType; + HANDLE hChannel; + UINT SequenceNumber; +} D3D11_AUTHENTICATED_CONFIGURE_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_INPUT +{ + GUID QueryType; + HANDLE hChannel; + UINT SequenceNumber; +} D3D11_AUTHENTICATED_QUERY_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT +{ + D3D11_OMAC omac; + GUID QueryType; + HANDLE hChannel; + UINT SequenceNumber; + HRESULT ReturnCode; +} D3D11_AUTHENTICATED_QUERY_OUTPUT; + +typedef union D3D11_AUTHENTICATED_PROTECTION_FLAGS +{ + struct + { + UINT ProtectionEnabled : 1; + UINT OverlayOrFullscreenRequired : 1; + UINT Reserved : 30; + } Flags; + UINT Value; +} D3D11_AUTHENTICATED_PROTECTION_FLAGS; + +typedef struct D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + D3D11_AUTHENTICATED_PROTECTION_FLAGS ProtectionFlags; +} D3D11_AUTHENTICATED_QUERY_PROTECTION_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + D3D11_AUTHENTICATED_CHANNEL_TYPE ChannelType; +} D3D11_AUTHENTICATED_QUERY_CHANNEL_TYPE_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + HANDLE DeviceHandle; +} D3D11_AUTHENTICATED_QUERY_DEVICE_HANDLE_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT +{ + D3D11_AUTHENTICATED_QUERY_INPUT Input; + HANDLE DecoderHandle; +} D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + HANDLE DecoderHandle; + HANDLE CryptoSessionHandle; + HANDLE DeviceHandle; +} D3D11_AUTHENTICATED_QUERY_CRYPTO_SESSION_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + UINT RestrictedSharedResourceProcessCount; +} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_COUNT_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT +{ + D3D11_AUTHENTICATED_QUERY_INPUT Input; + UINT ProcessIndex; +} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + UINT ProcessIndex; + D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessIdentifier; + HANDLE ProcessHandle; +} D3D11_AUTHENTICATED_QUERY_RESTRICTED_SHARED_RESOURCE_PROCESS_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + UINT UnrestrictedProtectedSharedResourceCount; +} D3D11_AUTHENTICATED_QUERY_UNRESTRICTED_PROTECTED_SHARED_RESOURCE_COUNT_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT +{ + D3D11_AUTHENTICATED_QUERY_INPUT Input; + HANDLE DeviceHandle; + HANDLE CryptoSessionHandle; +} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + HANDLE DeviceHandle; + HANDLE CryptoSessionHandle; + UINT OutputIDCount; +} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_COUNT_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT +{ + D3D11_AUTHENTICATED_QUERY_INPUT Input; + HANDLE DeviceHandle; + HANDLE CryptoSessionHandle; + UINT OutputIDIndex; +} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + HANDLE DeviceHandle; + HANDLE CryptoSessionHandle; + UINT OutputIDIndex; + UINT64 OutputID; +} D3D11_AUTHENTICATED_QUERY_OUTPUT_ID_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_ACESSIBILITY_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + D3D11_BUS_TYPE BusType; + BOOL AccessibleInContiguousBlocks; + BOOL AccessibleInNonContiguousBlocks; +} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + UINT EncryptionGuidCount; +} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_COUNT_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT +{ + D3D11_AUTHENTICATED_QUERY_INPUT Input; + UINT EncryptionGuidIndex; +} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_INPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + UINT EncryptionGuidIndex; + GUID EncryptionGuid; +} D3D11_AUTHENTICATED_QUERY_ACCESSIBILITY_ENCRYPTION_GUID_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT +{ + D3D11_AUTHENTICATED_QUERY_OUTPUT Output; + GUID EncryptionGuid; +} D3D11_AUTHENTICATED_QUERY_CURRENT_ACCESSIBILITY_ENCRYPTION_OUTPUT; + +typedef struct D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT +{ + D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; + UINT StartSequenceQuery; + UINT StartSequenceConfigure; +} D3D11_AUTHENTICATED_CONFIGURE_INITIALIZE_INPUT; + +typedef struct D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT +{ + D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; + D3D11_AUTHENTICATED_PROTECTION_FLAGS Protections; +} D3D11_AUTHENTICATED_CONFIGURE_PROTECTION_INPUT; + +typedef struct D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT +{ + D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; + HANDLE DecoderHandle; + HANDLE CryptoSessionHandle; + HANDLE DeviceHandle; +} D3D11_AUTHENTICATED_CONFIGURE_CRYPTO_SESSION_INPUT; + +typedef struct D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT +{ + D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; + D3D11_AUTHENTICATED_PROCESS_IDENTIFIER_TYPE ProcessType; + HANDLE ProcessHandle; + BOOL AllowAccess; +} D3D11_AUTHENTICATED_CONFIGURE_SHARED_RESOURCE_INPUT; + +typedef struct D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT +{ + D3D11_AUTHENTICATED_CONFIGURE_INPUT Parameters; + GUID EncryptionGuid; +} D3D11_AUTHENTICATED_CONFIGURE_ACCESSIBLE_ENCRYPTION_INPUT; + [ object, local,