// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.240405.15 #pragma once #ifndef WINRT_Windows_Media_Protection_PlayReady_0_H #define WINRT_Windows_Media_Protection_PlayReady_0_H WINRT_EXPORT namespace winrt::Windows::Foundation { struct EventRegistrationToken; struct HResult; struct IAsyncAction; template struct WINRT_IMPL_EMPTY_BASES TypedEventHandler; struct Uri; } WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { template struct WINRT_IMPL_EMPTY_BASES IIterable; template struct WINRT_IMPL_EMPTY_BASES IIterator; struct IPropertySet; template struct WINRT_IMPL_EMPTY_BASES IVector; } WINRT_EXPORT namespace winrt::Windows::Media::Core { struct AudioStreamDescriptor; struct IMediaStreamDescriptor; struct MediaStreamSample; struct MediaStreamSource; struct VideoStreamDescriptor; } WINRT_EXPORT namespace winrt::Windows::Media::Protection { struct MediaProtectionManager; } WINRT_EXPORT namespace winrt::Windows::Storage { struct IStorageFile; } WINRT_EXPORT namespace winrt::Windows::Media::Protection::PlayReady { enum class NDCertificateFeature : int32_t { Transmitter = 1, Receiver = 2, SharedCertificate = 3, SecureClock = 4, AntiRollBackClock = 5, CRLS = 9, PlayReady3Features = 13, }; enum class NDCertificatePlatformID : int32_t { Windows = 0, OSX = 1, WindowsOnARM = 2, WindowsMobile7 = 5, iOSOnARM = 6, XBoxOnPPC = 7, WindowsPhone8OnARM = 8, WindowsPhone8OnX86 = 9, XboxOne = 10, AndroidOnARM = 11, WindowsPhone81OnARM = 12, WindowsPhone81OnX86 = 13, }; enum class NDCertificateType : int32_t { Unknown = 0, PC = 1, Device = 2, Domain = 3, Issuer = 4, CrlSigner = 5, Service = 6, Silverlight = 7, Application = 8, Metering = 9, KeyFileSigner = 10, Server = 11, LicenseSigner = 12, }; enum class NDClosedCaptionFormat : int32_t { ATSC = 0, SCTE20 = 1, Unknown = 2, }; enum class NDContentIDType : int32_t { KeyID = 1, PlayReadyObject = 2, Custom = 3, }; enum class NDMediaStreamType : int32_t { Audio = 1, Video = 2, }; enum class NDProximityDetectionType : int32_t { UDP = 1, TCP = 2, TransportAgnostic = 4, }; enum class NDStartAsyncOptions : int32_t { MutualAuthentication = 1, WaitForLicenseDescriptor = 2, }; enum class PlayReadyDecryptorSetup : int32_t { Uninitialized = 0, OnDemand = 1, }; enum class PlayReadyEncryptionAlgorithm : int32_t { Unprotected = 0, Aes128Ctr = 1, Cocktail = 4, Aes128Cbc = 5, Unspecified = 65535, Uninitialized = 2147483647, }; enum class PlayReadyHardwareDRMFeatures : int32_t { HardwareDRM = 1, HEVC = 2, Aes128Cbc = 3, }; enum class PlayReadyITADataFormat : int32_t { SerializedProperties = 0, SerializedProperties_WithContentProtectionWrapper = 1, }; struct INDClient; struct INDClientFactory; struct INDClosedCaptionDataReceivedEventArgs; struct INDCustomData; struct INDCustomDataFactory; struct INDDownloadEngine; struct INDDownloadEngineNotifier; struct INDLicenseFetchCompletedEventArgs; struct INDLicenseFetchDescriptor; struct INDLicenseFetchDescriptorFactory; struct INDLicenseFetchResult; struct INDMessenger; struct INDProximityDetectionCompletedEventArgs; struct INDRegistrationCompletedEventArgs; struct INDSendResult; struct INDStartResult; struct INDStorageFileHelper; struct INDStreamParser; struct INDStreamParserNotifier; struct INDTCPMessengerFactory; struct INDTransmitterProperties; struct IPlayReadyContentHeader; struct IPlayReadyContentHeader2; struct IPlayReadyContentHeaderFactory; struct IPlayReadyContentHeaderFactory2; struct IPlayReadyContentResolver; struct IPlayReadyDomain; struct IPlayReadyDomainIterableFactory; struct IPlayReadyDomainJoinServiceRequest; struct IPlayReadyDomainLeaveServiceRequest; struct IPlayReadyITADataGenerator; struct IPlayReadyIndividualizationServiceRequest; struct IPlayReadyLicense; struct IPlayReadyLicense2; struct IPlayReadyLicenseAcquisitionServiceRequest; struct IPlayReadyLicenseAcquisitionServiceRequest2; struct IPlayReadyLicenseAcquisitionServiceRequest3; struct IPlayReadyLicenseIterableFactory; struct IPlayReadyLicenseManagement; struct IPlayReadyLicenseSession; struct IPlayReadyLicenseSession2; struct IPlayReadyLicenseSessionFactory; struct IPlayReadyMeteringReportServiceRequest; struct IPlayReadyRevocationServiceRequest; struct IPlayReadySecureStopIterableFactory; struct IPlayReadySecureStopServiceRequest; struct IPlayReadySecureStopServiceRequestFactory; struct IPlayReadyServiceRequest; struct IPlayReadySoapMessage; struct IPlayReadyStatics; struct IPlayReadyStatics2; struct IPlayReadyStatics3; struct IPlayReadyStatics4; struct IPlayReadyStatics5; struct NDClient; struct NDCustomData; struct NDDownloadEngineNotifier; struct NDLicenseFetchDescriptor; struct NDStorageFileHelper; struct NDStreamParserNotifier; struct NDTCPMessenger; struct PlayReadyContentHeader; struct PlayReadyContentResolver; struct PlayReadyDomain; struct PlayReadyDomainIterable; struct PlayReadyDomainIterator; struct PlayReadyDomainJoinServiceRequest; struct PlayReadyDomainLeaveServiceRequest; struct PlayReadyITADataGenerator; struct PlayReadyIndividualizationServiceRequest; struct PlayReadyLicense; struct PlayReadyLicenseAcquisitionServiceRequest; struct PlayReadyLicenseIterable; struct PlayReadyLicenseIterator; struct PlayReadyLicenseManagement; struct PlayReadyLicenseSession; struct PlayReadyMeteringReportServiceRequest; struct PlayReadyRevocationServiceRequest; struct PlayReadySecureStopIterable; struct PlayReadySecureStopIterator; struct PlayReadySecureStopServiceRequest; struct PlayReadySoapMessage; struct PlayReadyStatics; } namespace winrt::impl { template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDClient"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDCustomData"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDDownloadEngineNotifier"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDLicenseFetchDescriptor"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDStorageFileHelper"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDStreamParserNotifier"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDTCPMessenger"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyContentHeader"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyContentResolver"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDomain"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDomainIterable"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDomainIterator"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDomainJoinServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDomainLeaveServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyITADataGenerator"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyIndividualizationServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicense"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicenseAcquisitionServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicenseIterable"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicenseIterator"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicenseManagement"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyLicenseSession"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyMeteringReportServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyRevocationServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadySecureStopIterable"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadySecureStopIterator"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadySecureStopServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadySoapMessage"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyStatics"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDCertificateFeature"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDCertificatePlatformID"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDCertificateType"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDClosedCaptionFormat"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDContentIDType"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDMediaStreamType"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDProximityDetectionType"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.NDStartAsyncOptions"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyDecryptorSetup"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyEncryptionAlgorithm"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyHardwareDRMFeatures"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.PlayReadyITADataFormat"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDClient"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDClientFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDClosedCaptionDataReceivedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDCustomData"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDCustomDataFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDDownloadEngine"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDDownloadEngineNotifier"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDLicenseFetchCompletedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDLicenseFetchDescriptor"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDLicenseFetchDescriptorFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDLicenseFetchResult"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDMessenger"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDProximityDetectionCompletedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDRegistrationCompletedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDSendResult"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDStartResult"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDStorageFileHelper"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDStreamParser"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDStreamParserNotifier"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDTCPMessengerFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.INDTransmitterProperties"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyContentHeader"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyContentHeader2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyContentHeaderFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyContentHeaderFactory2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyContentResolver"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyDomain"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyDomainIterableFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyDomainJoinServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyDomainLeaveServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyITADataGenerator"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyIndividualizationServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicense"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicense2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseAcquisitionServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseAcquisitionServiceRequest2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseAcquisitionServiceRequest3"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseIterableFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseManagement"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseSession"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseSession2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyLicenseSessionFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyMeteringReportServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyRevocationServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadySecureStopIterableFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadySecureStopServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadySecureStopServiceRequestFactory"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyServiceRequest"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadySoapMessage"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyStatics"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyStatics2"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyStatics3"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyStatics4"; template <> inline constexpr auto& name_v = L"Windows.Media.Protection.PlayReady.IPlayReadyStatics5"; template <> inline constexpr guid guid_v{ 0x3BD6781B,0x61B8,0x46E2,{ 0x99,0xA5,0x8A,0xBC,0xB6,0xB9,0xF7,0xD6 } }; // 3BD6781B-61B8-46E2-99A5-8ABCB6B9F7D6 template <> inline constexpr guid guid_v{ 0x3E53DD62,0xFEE8,0x451F,{ 0xB0,0xD4,0xF7,0x06,0xCC,0xA3,0xE0,0x37 } }; // 3E53DD62-FEE8-451F-B0D4-F706CCA3E037 template <> inline constexpr guid guid_v{ 0x4738D29F,0xC345,0x4649,{ 0x84,0x68,0xB8,0xC5,0xFC,0x35,0x71,0x90 } }; // 4738D29F-C345-4649-8468-B8C5FC357190 template <> inline constexpr guid guid_v{ 0xF5CB0FDC,0x2D09,0x4F19,{ 0xB5,0xE1,0x76,0xA0,0xB3,0xEE,0x92,0x67 } }; // F5CB0FDC-2D09-4F19-B5E1-76A0B3EE9267 template <> inline constexpr guid guid_v{ 0xD65405AB,0x3424,0x4833,{ 0x8C,0x9A,0xAF,0x5F,0xDE,0xB2,0x28,0x72 } }; // D65405AB-3424-4833-8C9A-AF5FDEB22872 template <> inline constexpr guid guid_v{ 0x2D223D65,0xC4B6,0x4438,{ 0x8D,0x46,0xB9,0x6E,0x6D,0x0F,0xB2,0x1F } }; // 2D223D65-C4B6-4438-8D46-B96E6D0FB21F template <> inline constexpr guid guid_v{ 0xD720B4D4,0xF4B8,0x4530,{ 0xA8,0x09,0x91,0x93,0xA5,0x71,0xE7,0xFC } }; // D720B4D4-F4B8-4530-A809-9193A571E7FC template <> inline constexpr guid guid_v{ 0x1EE30A1A,0x11B2,0x4558,{ 0x88,0x65,0xE3,0xA5,0x16,0x92,0x25,0x17 } }; // 1EE30A1A-11B2-4558-8865-E3A516922517 template <> inline constexpr guid guid_v{ 0x5498D33A,0xE686,0x4935,{ 0xA5,0x67,0x7C,0xA7,0x7A,0xD2,0x0F,0xA4 } }; // 5498D33A-E686-4935-A567-7CA77AD20FA4 template <> inline constexpr guid guid_v{ 0xD0031202,0xCFAC,0x4F00,{ 0xAE,0x6A,0x97,0xAF,0x80,0xB8,0x48,0xF2 } }; // D0031202-CFAC-4F00-AE6A-97AF80B848F2 template <> inline constexpr guid guid_v{ 0x21D39698,0xAA62,0x45FF,{ 0xA5,0xFF,0x80,0x37,0xE5,0x43,0x38,0x25 } }; // 21D39698-AA62-45FF-A5FF-8037E5433825 template <> inline constexpr guid guid_v{ 0xD42DF95D,0xA75B,0x47BF,{ 0x82,0x49,0xBC,0x83,0x82,0x0D,0xA3,0x8A } }; // D42DF95D-A75B-47BF-8249-BC83820DA38A template <> inline constexpr guid guid_v{ 0x2A706328,0xDA25,0x4F8C,{ 0x9E,0xB7,0x5D,0x0F,0xC3,0x65,0x8B,0xCA } }; // 2A706328-DA25-4F8C-9EB7-5D0FC3658BCA template <> inline constexpr guid guid_v{ 0x9E39B64D,0xAB5B,0x4905,{ 0xAC,0xDC,0x78,0x7A,0x77,0xC6,0x37,0x4D } }; // 9E39B64D-AB5B-4905-ACDC-787A77C6374D template <> inline constexpr guid guid_v{ 0xE3685517,0xA584,0x479D,{ 0x90,0xB7,0xD6,0x89,0xC7,0xBF,0x7C,0x80 } }; // E3685517-A584-479D-90B7-D689C7BF7C80 template <> inline constexpr guid guid_v{ 0x79F6E96E,0xF50F,0x4015,{ 0x8B,0xA4,0xC2,0xBC,0x34,0x4E,0xBD,0x4E } }; // 79F6E96E-F50F-4015-8BA4-C2BC344EBD4E template <> inline constexpr guid guid_v{ 0xD8F0BEF8,0x91D2,0x4D47,{ 0xA3,0xF9,0xEA,0xFF,0x4E,0xDB,0x72,0x9F } }; // D8F0BEF8-91D2-4D47-A3F9-EAFF4EDB729F template <> inline constexpr guid guid_v{ 0xE0BAA198,0x9796,0x41C9,{ 0x86,0x95,0x59,0x43,0x7E,0x67,0xE6,0x6A } }; // E0BAA198-9796-41C9-8695-59437E67E66A template <> inline constexpr guid guid_v{ 0xC167ACD0,0x2CE6,0x426C,{ 0xAC,0xE5,0x5E,0x92,0x75,0xFE,0xA7,0x15 } }; // C167ACD0-2CE6-426C-ACE5-5E9275FEA715 template <> inline constexpr guid guid_v{ 0x7DD85CFE,0x1B99,0x4F68,{ 0x8F,0x82,0x81,0x77,0xF7,0xCE,0xDF,0x2B } }; // 7DD85CFE-1B99-4F68-8F82-8177F7CEDF2B template <> inline constexpr guid guid_v{ 0xE536AF23,0xAC4F,0x4ADC,{ 0x8C,0x66,0x4F,0xF7,0xC2,0x70,0x2D,0xD6 } }; // E536AF23-AC4F-4ADC-8C66-4FF7C2702DD6 template <> inline constexpr guid guid_v{ 0x9A438A6A,0x7F4C,0x452E,{ 0x88,0xBD,0x01,0x48,0xC6,0x38,0x7A,0x2C } }; // 9A438A6A-7F4C-452E-88BD-0148C6387A2C template <> inline constexpr guid guid_v{ 0x359C79F4,0x2180,0x498C,{ 0x96,0x5B,0xE7,0x54,0xD8,0x75,0xEA,0xB2 } }; // 359C79F4-2180-498C-965B-E754D875EAB2 template <> inline constexpr guid guid_v{ 0xCB97C8FF,0xB758,0x4776,{ 0xBF,0x01,0x21,0x7A,0x8B,0x51,0x0B,0x2C } }; // CB97C8FF-B758-4776-BF01-217A8B510B2C template <> inline constexpr guid guid_v{ 0xD1239CF5,0xAE6D,0x4778,{ 0x97,0xFD,0x6E,0x3A,0x2E,0xEA,0xDB,0xEB } }; // D1239CF5-AE6D-4778-97FD-6E3A2EEADBEB template <> inline constexpr guid guid_v{ 0xFBFD2523,0x906D,0x4982,{ 0xA6,0xB8,0x68,0x49,0x56,0x5A,0x7C,0xE8 } }; // FBFD2523-906D-4982-A6B8-6849565A7CE8 template <> inline constexpr guid guid_v{ 0xADCC93AC,0x97E6,0x43EF,{ 0x95,0xE4,0xD7,0x86,0x8F,0x3B,0x16,0xA9 } }; // ADCC93AC-97E6-43EF-95E4-D7868F3B16A9 template <> inline constexpr guid guid_v{ 0x4DF384EE,0x3121,0x4DF3,{ 0xA5,0xE8,0xD0,0xC2,0x4C,0x05,0x00,0xFC } }; // 4DF384EE-3121-4DF3-A5E8-D0C24C0500FC template <> inline constexpr guid guid_v{ 0x171B4A5A,0x405F,0x4739,{ 0xB0,0x40,0x67,0xB9,0xF0,0xC3,0x87,0x58 } }; // 171B4A5A-405F-4739-B040-67B9F0C38758 template <> inline constexpr guid guid_v{ 0x062D58BE,0x97AD,0x4917,{ 0xAA,0x03,0x46,0xD4,0xC2,0x52,0xD4,0x64 } }; // 062D58BE-97AD-4917-AA03-46D4C252D464 template <> inline constexpr guid guid_v{ 0x24446B8E,0x10B9,0x4530,{ 0xB2,0x5B,0x90,0x1A,0x80,0x29,0xA9,0xB2 } }; // 24446B8E-10B9-4530-B25B-901A8029A9B2 template <> inline constexpr guid guid_v{ 0x21F5A86B,0x008C,0x4611,{ 0xAB,0x2F,0xAA,0xA6,0xC6,0x9F,0x0E,0x24 } }; // 21F5A86B-008C-4611-AB2F-AAA6C69F0E24 template <> inline constexpr guid guid_v{ 0xEE474C4E,0xFA3C,0x414D,{ 0xA9,0xF2,0x3F,0xFC,0x1E,0xF8,0x32,0xD4 } }; // EE474C4E-FA3C-414D-A9F2-3FFC1EF832D4 template <> inline constexpr guid guid_v{ 0x30F4E7A7,0xD8E3,0x48A0,{ 0xBC,0xDA,0xFF,0x9F,0x40,0x53,0x04,0x36 } }; // 30F4E7A7-D8E3-48A0-BCDA-FF9F40530436 template <> inline constexpr guid guid_v{ 0x5D85FF45,0x3E9F,0x4F48,{ 0x93,0xE1,0x95,0x30,0xC8,0xD5,0x8C,0x3E } }; // 5D85FF45-3E9F-4F48-93E1-9530C8D58C3E template <> inline constexpr guid guid_v{ 0xB7FA5EB5,0xFE0C,0xB225,{ 0xBC,0x60,0x5A,0x9E,0xDD,0x32,0xCE,0xB5 } }; // B7FA5EB5-FE0C-B225-BC60-5A9EDD32CEB5 template <> inline constexpr guid guid_v{ 0x394E5F4D,0x7F75,0x430D,{ 0xB2,0xE7,0x7F,0x75,0xF3,0x4B,0x2D,0x75 } }; // 394E5F4D-7F75-430D-B2E7-7F75F34B2D75 template <> inline constexpr guid guid_v{ 0xD4179F08,0x0837,0x4978,{ 0x8E,0x68,0xBE,0x42,0x93,0xC8,0xD7,0xA6 } }; // D4179F08-0837-4978-8E68-BE4293C8D7A6 template <> inline constexpr guid guid_v{ 0xAAEB2141,0x0957,0x4405,{ 0xB8,0x92,0x8B,0xF3,0xEC,0x5D,0xAD,0xD9 } }; // AAEB2141-0957-4405-B892-8BF3EC5DADD9 template <> inline constexpr guid guid_v{ 0xA1723A39,0x87FA,0x4FDD,{ 0xAB,0xBB,0xA9,0x72,0x0E,0x84,0x52,0x59 } }; // A1723A39-87FA-4FDD-ABBB-A9720E845259 template <> inline constexpr guid guid_v{ 0x4909BE3A,0x3AED,0x4656,{ 0x8A,0xD7,0xEE,0x0F,0xD7,0x79,0x95,0x10 } }; // 4909BE3A-3AED-4656-8AD7-EE0FD7799510 template <> inline constexpr guid guid_v{ 0x62492699,0x6527,0x429E,{ 0x98,0xBE,0x48,0xD7,0x98,0xAC,0x27,0x39 } }; // 62492699-6527-429E-98BE-48D798AC2739 template <> inline constexpr guid guid_v{ 0xC12B231C,0x0ECD,0x4F11,{ 0xA1,0x85,0x1E,0x24,0xA4,0xA6,0x7F,0xB7 } }; // C12B231C-0ECD-4F11-A185-1E24A4A67FB7 template <> inline constexpr guid guid_v{ 0x543D66AC,0xFAF0,0x4560,{ 0x84,0xA5,0x0E,0x4A,0xCE,0xC9,0x39,0xE4 } }; // 543D66AC-FAF0-4560-84A5-0E4ACEC939E4 template <> inline constexpr guid guid_v{ 0x5F1F0165,0x4214,0x4D9E,{ 0x81,0xEB,0xE8,0x9F,0x9D,0x29,0x4A,0xEE } }; // 5F1F0165-4214-4D9E-81EB-E89F9D294AEE template <> inline constexpr guid guid_v{ 0xB5501EE5,0x01BF,0x4401,{ 0x96,0x77,0x05,0x63,0x0A,0x6A,0x4C,0xC8 } }; // B5501EE5-01BF-4401-9677-05630A6A4CC8 template <> inline constexpr guid guid_v{ 0x0E448AC9,0xE67E,0x494E,{ 0x9F,0x49,0x62,0x85,0x43,0x8C,0x76,0xCF } }; // 0E448AC9-E67E-494E-9F49-6285438C76CF template <> inline constexpr guid guid_v{ 0x8BAD2836,0xA703,0x45A6,{ 0xA1,0x80,0x76,0xF3,0x56,0x5A,0xA7,0x25 } }; // 8BAD2836-A703-45A6-A180-76F3565AA725 template <> inline constexpr guid guid_v{ 0xB659FCB5,0xCE41,0x41BA,{ 0x8A,0x0D,0x61,0xDF,0x5F,0xFF,0xA1,0x39 } }; // B659FCB5-CE41-41BA-8A0D-61DF5FFFA139 template <> inline constexpr guid guid_v{ 0x5E69C00D,0x247C,0x469A,{ 0x8F,0x31,0x5C,0x1A,0x15,0x71,0xD9,0xC6 } }; // 5E69C00D-247C-469A-8F31-5C1A1571D9C6 template <> inline constexpr guid guid_v{ 0x1F8D6A92,0x5F9A,0x423E,{ 0x94,0x66,0xB3,0x39,0x69,0xAF,0x7A,0x3D } }; // 1F8D6A92-5F9A-423E-9466-B33969AF7A3D template <> inline constexpr guid guid_v{ 0x3FA33F71,0x2DD3,0x4BED,{ 0xAE,0x49,0xF7,0x14,0x8E,0x63,0xE7,0x10 } }; // 3FA33F71-2DD3-4BED-AE49-F7148E63E710 template <> inline constexpr guid guid_v{ 0x50A91300,0xD824,0x4231,{ 0x9D,0x5E,0x78,0xEF,0x88,0x44,0xC7,0xD7 } }; // 50A91300-D824-4231-9D5E-78EF8844C7D7 template <> inline constexpr guid guid_v{ 0x230A7075,0xDFA0,0x4F8E,{ 0xA7,0x79,0xCE,0xFE,0xA9,0xC6,0x82,0x4B } }; // 230A7075-DFA0-4F8E-A779-CEFEA9C6824B template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDClient; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDCustomData; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDDownloadEngineNotifier; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDLicenseFetchDescriptor; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDStorageFileHelper; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDStreamParserNotifier; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::INDMessenger; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyContentHeader; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyDomain; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterable; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterator; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyDomainJoinServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyDomainLeaveServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyITADataGenerator; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyIndividualizationServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyLicense; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyLicenseAcquisitionServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterable; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterator; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyLicenseSession; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyMeteringReportServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadyRevocationServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterable; }; template <> struct default_interface{ using type = winrt::Windows::Foundation::Collections::IIterator; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadySecureStopServiceRequest; }; template <> struct default_interface{ using type = winrt::Windows::Media::Protection::PlayReady::IPlayReadySoapMessage; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall add_RegistrationCompleted(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_RegistrationCompleted(winrt::event_token) noexcept = 0; virtual int32_t __stdcall add_ProximityDetectionCompleted(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_ProximityDetectionCompleted(winrt::event_token) noexcept = 0; virtual int32_t __stdcall add_LicenseFetchCompleted(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_LicenseFetchCompleted(winrt::event_token) noexcept = 0; virtual int32_t __stdcall add_ReRegistrationNeeded(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_ReRegistrationNeeded(winrt::event_token) noexcept = 0; virtual int32_t __stdcall add_ClosedCaptionDataReceived(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_ClosedCaptionDataReceived(winrt::event_token) noexcept = 0; virtual int32_t __stdcall StartAsync(void*, uint32_t, void*, void*, void**) noexcept = 0; virtual int32_t __stdcall LicenseFetchAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall ReRegistrationAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall Close() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ClosedCaptionDataFormat(int32_t*) noexcept = 0; virtual int32_t __stdcall get_PresentationTimestamp(int64_t*) noexcept = 0; virtual int32_t __stdcall get_ClosedCaptionData(uint32_t* __ccDataBytesSize, uint8_t**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_CustomDataTypeID(uint32_t* __customDataTypeIDBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_CustomData(uint32_t* __customDataBytesSize, uint8_t**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(uint32_t, uint8_t*, uint32_t, uint8_t*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall Open(void*, uint32_t, uint8_t*) noexcept = 0; virtual int32_t __stdcall Pause() noexcept = 0; virtual int32_t __stdcall Resume() noexcept = 0; virtual int32_t __stdcall Close() noexcept = 0; virtual int32_t __stdcall Seek(int64_t) noexcept = 0; virtual int32_t __stdcall get_CanSeek(bool*) noexcept = 0; virtual int32_t __stdcall get_BufferFullMinThresholdInSamples(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_BufferFullMaxThresholdInSamples(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_Notifier(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall OnStreamOpened() noexcept = 0; virtual int32_t __stdcall OnPlayReadyObjectReceived(uint32_t, uint8_t*) noexcept = 0; virtual int32_t __stdcall OnContentIDReceived(void*) noexcept = 0; virtual int32_t __stdcall OnDataReceived(uint32_t, uint8_t*, uint32_t) noexcept = 0; virtual int32_t __stdcall OnEndOfStream() noexcept = 0; virtual int32_t __stdcall OnNetworkError() noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ResponseCustomData(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ContentIDType(int32_t*) noexcept = 0; virtual int32_t __stdcall get_ContentID(uint32_t* __contentIDBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_LicenseFetchChallengeCustomData(void**) noexcept = 0; virtual int32_t __stdcall put_LicenseFetchChallengeCustomData(void*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(int32_t, uint32_t, uint8_t*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ResponseCustomData(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall SendRegistrationRequestAsync(uint32_t, uint8_t*, uint32_t, uint8_t*, void**) noexcept = 0; virtual int32_t __stdcall SendProximityDetectionStartAsync(int32_t, uint32_t, uint8_t*, uint32_t, uint8_t*, uint32_t, uint8_t*, void**) noexcept = 0; virtual int32_t __stdcall SendProximityDetectionResponseAsync(int32_t, uint32_t, uint8_t*, uint32_t, uint8_t*, uint32_t, uint8_t*, void**) noexcept = 0; virtual int32_t __stdcall SendLicenseFetchRequestAsync(uint32_t, uint8_t*, uint32_t, uint8_t*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ProximityDetectionRetryCount(uint32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ResponseCustomData(void**) noexcept = 0; virtual int32_t __stdcall get_TransmitterProperties(void**) noexcept = 0; virtual int32_t __stdcall get_TransmitterCertificateAccepted(bool*) noexcept = 0; virtual int32_t __stdcall put_TransmitterCertificateAccepted(bool) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Response(uint32_t* __responseDataBytesSize, uint8_t**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_MediaStreamSource(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetFileURLs(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall ParseData(uint32_t, uint8_t*) noexcept = 0; virtual int32_t __stdcall GetStreamInformation(void*, int32_t*, uint32_t*) noexcept = 0; virtual int32_t __stdcall BeginOfStream() noexcept = 0; virtual int32_t __stdcall EndOfStream() noexcept = 0; virtual int32_t __stdcall get_Notifier(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall OnContentIDReceived(void*) noexcept = 0; virtual int32_t __stdcall OnMediaStreamDescriptorCreated(void*, void*) noexcept = 0; virtual int32_t __stdcall OnSampleParsed(uint32_t, int32_t, void*, int64_t, int32_t, uint32_t, uint8_t*) noexcept = 0; virtual int32_t __stdcall OnBeginSetupDecryptor(void*, winrt::guid, uint32_t, uint8_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, uint32_t, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_CertificateType(int32_t*) noexcept = 0; virtual int32_t __stdcall get_PlatformIdentifier(int32_t*) noexcept = 0; virtual int32_t __stdcall get_SupportedFeatures(uint32_t* __featureSetsSize, int32_t**) noexcept = 0; virtual int32_t __stdcall get_SecurityLevel(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_SecurityVersion(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_ExpirationDate(int64_t*) noexcept = 0; virtual int32_t __stdcall get_ClientID(uint32_t* __clientIDBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_ModelDigest(uint32_t* __modelDigestBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_ModelManufacturerName(void**) noexcept = 0; virtual int32_t __stdcall get_ModelName(void**) noexcept = 0; virtual int32_t __stdcall get_ModelNumber(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_KeyId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_KeyIdString(void**) noexcept = 0; virtual int32_t __stdcall get_LicenseAcquisitionUrl(void**) noexcept = 0; virtual int32_t __stdcall get_LicenseAcquisitionUserInterfaceUrl(void**) noexcept = 0; virtual int32_t __stdcall get_DomainServiceId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_EncryptionType(int32_t*) noexcept = 0; virtual int32_t __stdcall get_CustomAttributes(void**) noexcept = 0; virtual int32_t __stdcall get_DecryptorSetup(int32_t*) noexcept = 0; virtual int32_t __stdcall GetSerializedHeader(uint32_t* __headerBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_HeaderWithEmbeddedUpdates(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_KeyIds(uint32_t* __contentKeyIdsSize, winrt::guid**) noexcept = 0; virtual int32_t __stdcall get_KeyIdStrings(uint32_t* __contentKeyIdStringsSize, void***) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstanceFromWindowsMediaDrmHeader(uint32_t, uint8_t*, void*, void*, void*, winrt::guid, void**) noexcept = 0; virtual int32_t __stdcall CreateInstanceFromComponents(winrt::guid, void*, int32_t, void*, void*, void*, winrt::guid, void**) noexcept = 0; virtual int32_t __stdcall CreateInstanceFromPlayReadyHeader(uint32_t, uint8_t*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstanceFromComponents2(uint32_t, uint32_t, winrt::guid*, uint32_t, void**, int32_t, void*, void*, void*, winrt::guid, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall ServiceRequest(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_AccountId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_ServiceId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_Revision(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_FriendlyName(void**) noexcept = 0; virtual int32_t __stdcall get_DomainJoinUrl(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(winrt::guid, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DomainAccountId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall put_DomainAccountId(winrt::guid) noexcept = 0; virtual int32_t __stdcall get_DomainFriendlyName(void**) noexcept = 0; virtual int32_t __stdcall put_DomainFriendlyName(void*) noexcept = 0; virtual int32_t __stdcall get_DomainServiceId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall put_DomainServiceId(winrt::guid) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DomainAccountId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall put_DomainAccountId(winrt::guid) noexcept = 0; virtual int32_t __stdcall get_DomainServiceId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall put_DomainServiceId(winrt::guid) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GenerateData(winrt::guid, uint32_t, void*, int32_t, uint32_t* __dataBytesSize, uint8_t**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_FullyEvaluated(bool*) noexcept = 0; virtual int32_t __stdcall get_UsableForPlay(bool*) noexcept = 0; virtual int32_t __stdcall get_ExpirationDate(void**) noexcept = 0; virtual int32_t __stdcall get_ExpireAfterFirstPlay(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_DomainAccountID(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_ChainDepth(uint32_t*) noexcept = 0; virtual int32_t __stdcall GetKIDAtChainDepth(uint32_t, winrt::guid*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SecureStopId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_SecurityLevel(uint32_t*) noexcept = 0; virtual int32_t __stdcall get_InMemoryOnly(bool*) noexcept = 0; virtual int32_t __stdcall get_ExpiresInRealTime(bool*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_ContentHeader(void**) noexcept = 0; virtual int32_t __stdcall put_ContentHeader(void*) noexcept = 0; virtual int32_t __stdcall get_DomainServiceId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall put_DomainServiceId(winrt::guid) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SessionId(winrt::guid*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateLicenseIterable(void*, bool, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, bool, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall DeleteLicenses(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateLAServiceRequest(void**) noexcept = 0; virtual int32_t __stdcall ConfigureMediaProtectionManager(void*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateLicenseIterable(void*, bool, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_MeteringCertificate(uint32_t* __meteringCertBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall put_MeteringCertificate(uint32_t, uint8_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(uint32_t, uint8_t*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SessionID(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_StartTime(int64_t*) noexcept = 0; virtual int32_t __stdcall get_UpdateTime(int64_t*) noexcept = 0; virtual int32_t __stdcall get_Stopped(bool*) noexcept = 0; virtual int32_t __stdcall get_PublisherCertificate(uint32_t* __publisherCertBytesSize, uint8_t**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(uint32_t, uint8_t*, void**) noexcept = 0; virtual int32_t __stdcall CreateInstanceFromSessionID(winrt::guid, uint32_t, uint8_t*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Uri(void**) noexcept = 0; virtual int32_t __stdcall put_Uri(void*) noexcept = 0; virtual int32_t __stdcall get_ResponseCustomData(void**) noexcept = 0; virtual int32_t __stdcall get_ChallengeCustomData(void**) noexcept = 0; virtual int32_t __stdcall put_ChallengeCustomData(void*) noexcept = 0; virtual int32_t __stdcall BeginServiceRequest(void**) noexcept = 0; virtual int32_t __stdcall NextServiceRequest(void**) noexcept = 0; virtual int32_t __stdcall GenerateManualEnablingChallenge(void**) noexcept = 0; virtual int32_t __stdcall ProcessManualEnablingResponse(uint32_t, uint8_t*, winrt::hresult*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetMessageBody(uint32_t* __messageBodyBytesSize, uint8_t**) noexcept = 0; virtual int32_t __stdcall get_MessageHeaders(void**) noexcept = 0; virtual int32_t __stdcall get_Uri(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DomainJoinServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_DomainLeaveServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_IndividualizationServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_LicenseAcquirerServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_MeteringReportServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_RevocationServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_MediaProtectionSystemId(winrt::guid*) noexcept = 0; virtual int32_t __stdcall get_PlayReadySecurityVersion(uint32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_PlayReadyCertificateSecurityLevel(uint32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SecureStopServiceRequestType(winrt::guid*) noexcept = 0; virtual int32_t __stdcall CheckSupportedHardware(int32_t, bool*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_InputTrustAuthorityToCreate(void**) noexcept = 0; virtual int32_t __stdcall get_ProtectionSystemId(winrt::guid*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_HardwareDRMDisabledAtTime(void**) noexcept = 0; virtual int32_t __stdcall get_HardwareDRMDisabledUntilTime(void**) noexcept = 0; virtual int32_t __stdcall ResetHardwareDRMDisabled() noexcept = 0; }; }; template struct consume_Windows_Media_Protection_PlayReady_INDClient { auto RegistrationCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using RegistrationCompleted_revoker = impl::event_revoker::remove_RegistrationCompleted>; [[nodiscard]] auto RegistrationCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto RegistrationCompleted(winrt::event_token const& token) const noexcept; auto ProximityDetectionCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using ProximityDetectionCompleted_revoker = impl::event_revoker::remove_ProximityDetectionCompleted>; [[nodiscard]] auto ProximityDetectionCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto ProximityDetectionCompleted(winrt::event_token const& token) const noexcept; auto LicenseFetchCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using LicenseFetchCompleted_revoker = impl::event_revoker::remove_LicenseFetchCompleted>; [[nodiscard]] auto LicenseFetchCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto LicenseFetchCompleted(winrt::event_token const& token) const noexcept; auto ReRegistrationNeeded(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using ReRegistrationNeeded_revoker = impl::event_revoker::remove_ReRegistrationNeeded>; [[nodiscard]] auto ReRegistrationNeeded(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto ReRegistrationNeeded(winrt::event_token const& token) const noexcept; auto ClosedCaptionDataReceived(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using ClosedCaptionDataReceived_revoker = impl::event_revoker::remove_ClosedCaptionDataReceived>; [[nodiscard]] auto ClosedCaptionDataReceived(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto ClosedCaptionDataReceived(winrt::event_token const& token) const noexcept; auto StartAsync(winrt::Windows::Foundation::Uri const& contentUrl, uint32_t startAsyncOptions, winrt::Windows::Media::Protection::PlayReady::INDCustomData const& registrationCustomData, winrt::Windows::Media::Protection::PlayReady::INDLicenseFetchDescriptor const& licenseFetchDescriptor) const; auto LicenseFetchAsync(winrt::Windows::Media::Protection::PlayReady::INDLicenseFetchDescriptor const& licenseFetchDescriptor) const; auto ReRegistrationAsync(winrt::Windows::Media::Protection::PlayReady::INDCustomData const& registrationCustomData) const; auto Close() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDClient; }; template struct consume_Windows_Media_Protection_PlayReady_INDClientFactory { auto CreateInstance(winrt::Windows::Media::Protection::PlayReady::INDDownloadEngine const& downloadEngine, winrt::Windows::Media::Protection::PlayReady::INDStreamParser const& streamParser, winrt::Windows::Media::Protection::PlayReady::INDMessenger const& pMessenger) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDClientFactory; }; template struct consume_Windows_Media_Protection_PlayReady_INDClosedCaptionDataReceivedEventArgs { [[nodiscard]] auto ClosedCaptionDataFormat() const; [[nodiscard]] auto PresentationTimestamp() const; [[nodiscard]] auto ClosedCaptionData() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDClosedCaptionDataReceivedEventArgs; }; template struct consume_Windows_Media_Protection_PlayReady_INDCustomData { [[nodiscard]] auto CustomDataTypeID() const; [[nodiscard]] auto CustomData() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDCustomData; }; template struct consume_Windows_Media_Protection_PlayReady_INDCustomDataFactory { auto CreateInstance(array_view customDataTypeIDBytes, array_view customDataBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDCustomDataFactory; }; template struct consume_Windows_Media_Protection_PlayReady_INDDownloadEngine { auto Open(winrt::Windows::Foundation::Uri const& uri, array_view sessionIDBytes) const; auto Pause() const; auto Resume() const; auto Close() const; auto Seek(winrt::Windows::Foundation::TimeSpan const& startPosition) const; [[nodiscard]] auto CanSeek() const; [[nodiscard]] auto BufferFullMinThresholdInSamples() const; [[nodiscard]] auto BufferFullMaxThresholdInSamples() const; [[nodiscard]] auto Notifier() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDDownloadEngine; }; template struct consume_Windows_Media_Protection_PlayReady_INDDownloadEngineNotifier { auto OnStreamOpened() const; auto OnPlayReadyObjectReceived(array_view dataBytes) const; auto OnContentIDReceived(winrt::Windows::Media::Protection::PlayReady::INDLicenseFetchDescriptor const& licenseFetchDescriptor) const; auto OnDataReceived(array_view dataBytes, uint32_t bytesReceived) const; auto OnEndOfStream() const; auto OnNetworkError() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDDownloadEngineNotifier; }; template struct consume_Windows_Media_Protection_PlayReady_INDLicenseFetchCompletedEventArgs { [[nodiscard]] auto ResponseCustomData() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDLicenseFetchCompletedEventArgs; }; template struct consume_Windows_Media_Protection_PlayReady_INDLicenseFetchDescriptor { [[nodiscard]] auto ContentIDType() const; [[nodiscard]] auto ContentID() const; [[nodiscard]] auto LicenseFetchChallengeCustomData() const; auto LicenseFetchChallengeCustomData(winrt::Windows::Media::Protection::PlayReady::INDCustomData const& licenseFetchChallengeCustomData) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDLicenseFetchDescriptor; }; template struct consume_Windows_Media_Protection_PlayReady_INDLicenseFetchDescriptorFactory { auto CreateInstance(winrt::Windows::Media::Protection::PlayReady::NDContentIDType const& contentIDType, array_view contentIDBytes, winrt::Windows::Media::Protection::PlayReady::INDCustomData const& licenseFetchChallengeCustomData) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDLicenseFetchDescriptorFactory; }; template struct consume_Windows_Media_Protection_PlayReady_INDLicenseFetchResult { [[nodiscard]] auto ResponseCustomData() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDLicenseFetchResult; }; template struct consume_Windows_Media_Protection_PlayReady_INDMessenger { auto SendRegistrationRequestAsync(array_view sessionIDBytes, array_view challengeDataBytes) const; auto SendProximityDetectionStartAsync(winrt::Windows::Media::Protection::PlayReady::NDProximityDetectionType const& pdType, array_view transmitterChannelBytes, array_view sessionIDBytes, array_view challengeDataBytes) const; auto SendProximityDetectionResponseAsync(winrt::Windows::Media::Protection::PlayReady::NDProximityDetectionType const& pdType, array_view transmitterChannelBytes, array_view sessionIDBytes, array_view responseDataBytes) const; auto SendLicenseFetchRequestAsync(array_view sessionIDBytes, array_view challengeDataBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDMessenger; }; template struct consume_Windows_Media_Protection_PlayReady_INDProximityDetectionCompletedEventArgs { [[nodiscard]] auto ProximityDetectionRetryCount() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDProximityDetectionCompletedEventArgs; }; template struct consume_Windows_Media_Protection_PlayReady_INDRegistrationCompletedEventArgs { [[nodiscard]] auto ResponseCustomData() const; [[nodiscard]] auto TransmitterProperties() const; [[nodiscard]] auto TransmitterCertificateAccepted() const; auto TransmitterCertificateAccepted(bool accept) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDRegistrationCompletedEventArgs; }; template struct consume_Windows_Media_Protection_PlayReady_INDSendResult { [[nodiscard]] auto Response() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDSendResult; }; template struct consume_Windows_Media_Protection_PlayReady_INDStartResult { [[nodiscard]] auto MediaStreamSource() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDStartResult; }; template struct consume_Windows_Media_Protection_PlayReady_INDStorageFileHelper { auto GetFileURLs(winrt::Windows::Storage::IStorageFile const& file) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDStorageFileHelper; }; template struct consume_Windows_Media_Protection_PlayReady_INDStreamParser { auto ParseData(array_view dataBytes) const; auto GetStreamInformation(winrt::Windows::Media::Core::IMediaStreamDescriptor const& descriptor, winrt::Windows::Media::Protection::PlayReady::NDMediaStreamType& streamType) const; auto BeginOfStream() const; auto EndOfStream() const; [[nodiscard]] auto Notifier() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDStreamParser; }; template struct consume_Windows_Media_Protection_PlayReady_INDStreamParserNotifier { auto OnContentIDReceived(winrt::Windows::Media::Protection::PlayReady::INDLicenseFetchDescriptor const& licenseFetchDescriptor) const; auto OnMediaStreamDescriptorCreated(param::vector const& audioStreamDescriptors, param::vector const& videoStreamDescriptors) const; auto OnSampleParsed(uint32_t streamID, winrt::Windows::Media::Protection::PlayReady::NDMediaStreamType const& streamType, winrt::Windows::Media::Core::MediaStreamSample const& streamSample, int64_t pts, winrt::Windows::Media::Protection::PlayReady::NDClosedCaptionFormat const& ccFormat, array_view ccDataBytes) const; auto OnBeginSetupDecryptor(winrt::Windows::Media::Core::IMediaStreamDescriptor const& descriptor, winrt::guid const& keyID, array_view proBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDStreamParserNotifier; }; template struct consume_Windows_Media_Protection_PlayReady_INDTCPMessengerFactory { auto CreateInstance(param::hstring const& remoteHostName, uint32_t remoteHostPort) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDTCPMessengerFactory; }; template struct consume_Windows_Media_Protection_PlayReady_INDTransmitterProperties { [[nodiscard]] auto CertificateType() const; [[nodiscard]] auto PlatformIdentifier() const; [[nodiscard]] auto SupportedFeatures() const; [[nodiscard]] auto SecurityLevel() const; [[nodiscard]] auto SecurityVersion() const; [[nodiscard]] auto ExpirationDate() const; [[nodiscard]] auto ClientID() const; [[nodiscard]] auto ModelDigest() const; [[nodiscard]] auto ModelManufacturerName() const; [[nodiscard]] auto ModelName() const; [[nodiscard]] auto ModelNumber() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_INDTransmitterProperties; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeader { [[nodiscard]] auto KeyId() const; [[nodiscard]] auto KeyIdString() const; [[nodiscard]] auto LicenseAcquisitionUrl() const; [[nodiscard]] auto LicenseAcquisitionUserInterfaceUrl() const; [[nodiscard]] auto DomainServiceId() const; [[nodiscard]] auto EncryptionType() const; [[nodiscard]] auto CustomAttributes() const; [[nodiscard]] auto DecryptorSetup() const; auto GetSerializedHeader() const; [[nodiscard]] auto HeaderWithEmbeddedUpdates() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeader; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeader2 { [[nodiscard]] auto KeyIds() const; [[nodiscard]] auto KeyIdStrings() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeader2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeaderFactory { auto CreateInstanceFromWindowsMediaDrmHeader(array_view headerBytes, winrt::Windows::Foundation::Uri const& licenseAcquisitionUrl, winrt::Windows::Foundation::Uri const& licenseAcquisitionUserInterfaceUrl, param::hstring const& customAttributes, winrt::guid const& domainServiceId) const; auto CreateInstanceFromComponents(winrt::guid const& contentKeyId, param::hstring const& contentKeyIdString, winrt::Windows::Media::Protection::PlayReady::PlayReadyEncryptionAlgorithm const& contentEncryptionAlgorithm, winrt::Windows::Foundation::Uri const& licenseAcquisitionUrl, winrt::Windows::Foundation::Uri const& licenseAcquisitionUserInterfaceUrl, param::hstring const& customAttributes, winrt::guid const& domainServiceId) const; auto CreateInstanceFromPlayReadyHeader(array_view headerBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeaderFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeaderFactory2 { auto CreateInstanceFromComponents2(uint32_t dwFlags, array_view contentKeyIds, array_view contentKeyIdStrings, winrt::Windows::Media::Protection::PlayReady::PlayReadyEncryptionAlgorithm const& contentEncryptionAlgorithm, winrt::Windows::Foundation::Uri const& licenseAcquisitionUrl, winrt::Windows::Foundation::Uri const& licenseAcquisitionUserInterfaceUrl, param::hstring const& customAttributes, winrt::guid const& domainServiceId) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyContentHeaderFactory2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyContentResolver { auto ServiceRequest(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& contentHeader) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyContentResolver; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyDomain { [[nodiscard]] auto AccountId() const; [[nodiscard]] auto ServiceId() const; [[nodiscard]] auto Revision() const; [[nodiscard]] auto FriendlyName() const; [[nodiscard]] auto DomainJoinUrl() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyDomain; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainIterableFactory { auto CreateInstance(winrt::guid const& domainAccountId) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainIterableFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainJoinServiceRequest { [[nodiscard]] auto DomainAccountId() const; auto DomainAccountId(winrt::guid const& value) const; [[nodiscard]] auto DomainFriendlyName() const; auto DomainFriendlyName(param::hstring const& value) const; [[nodiscard]] auto DomainServiceId() const; auto DomainServiceId(winrt::guid const& value) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainJoinServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainLeaveServiceRequest { [[nodiscard]] auto DomainAccountId() const; auto DomainAccountId(winrt::guid const& value) const; [[nodiscard]] auto DomainServiceId() const; auto DomainServiceId(winrt::guid const& value) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyDomainLeaveServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyITADataGenerator { auto GenerateData(winrt::guid const& guidCPSystemId, uint32_t countOfStreams, winrt::Windows::Foundation::Collections::IPropertySet const& configuration, winrt::Windows::Media::Protection::PlayReady::PlayReadyITADataFormat const& format) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyITADataGenerator; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyIndividualizationServiceRequest { }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyIndividualizationServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicense { [[nodiscard]] auto FullyEvaluated() const; [[nodiscard]] auto UsableForPlay() const; [[nodiscard]] auto ExpirationDate() const; [[nodiscard]] auto ExpireAfterFirstPlay() const; [[nodiscard]] auto DomainAccountID() const; [[nodiscard]] auto ChainDepth() const; auto GetKIDAtChainDepth(uint32_t chainDepth) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicense; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicense2 { [[nodiscard]] auto SecureStopId() const; [[nodiscard]] auto SecurityLevel() const; [[nodiscard]] auto InMemoryOnly() const; [[nodiscard]] auto ExpiresInRealTime() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicense2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest { [[nodiscard]] auto ContentHeader() const; auto ContentHeader(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& value) const; [[nodiscard]] auto DomainServiceId() const; auto DomainServiceId(winrt::guid const& value) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest2 { [[nodiscard]] auto SessionId() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest3 { auto CreateLicenseIterable(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& contentHeader, bool fullyEvaluated) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseAcquisitionServiceRequest3; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseIterableFactory { auto CreateInstance(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& contentHeader, bool fullyEvaluated) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseIterableFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseManagement { auto DeleteLicenses(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& contentHeader) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseManagement; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSession { auto CreateLAServiceRequest() const; auto ConfigureMediaProtectionManager(winrt::Windows::Media::Protection::MediaProtectionManager const& mpm) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSession; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSession2 { auto CreateLicenseIterable(winrt::Windows::Media::Protection::PlayReady::PlayReadyContentHeader const& contentHeader, bool fullyEvaluated) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSession2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSessionFactory { auto CreateInstance(winrt::Windows::Foundation::Collections::IPropertySet const& configuration) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyLicenseSessionFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyMeteringReportServiceRequest { [[nodiscard]] auto MeteringCertificate() const; auto MeteringCertificate(array_view meteringCertBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyMeteringReportServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyRevocationServiceRequest { }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyRevocationServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopIterableFactory { auto CreateInstance(array_view publisherCertBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopIterableFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopServiceRequest { [[nodiscard]] auto SessionID() const; [[nodiscard]] auto StartTime() const; [[nodiscard]] auto UpdateTime() const; [[nodiscard]] auto Stopped() const; [[nodiscard]] auto PublisherCertificate() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopServiceRequestFactory { auto CreateInstance(array_view publisherCertBytes) const; auto CreateInstanceFromSessionID(winrt::guid const& sessionID, array_view publisherCertBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadySecureStopServiceRequestFactory; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyServiceRequest { [[nodiscard]] auto Uri() const; auto Uri(winrt::Windows::Foundation::Uri const& value) const; [[nodiscard]] auto ResponseCustomData() const; [[nodiscard]] auto ChallengeCustomData() const; auto ChallengeCustomData(param::hstring const& value) const; auto BeginServiceRequest() const; auto NextServiceRequest() const; auto GenerateManualEnablingChallenge() const; auto ProcessManualEnablingResponse(array_view responseBytes) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyServiceRequest; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadySoapMessage { auto GetMessageBody() const; [[nodiscard]] auto MessageHeaders() const; [[nodiscard]] auto Uri() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadySoapMessage; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics { [[nodiscard]] auto DomainJoinServiceRequestType() const; [[nodiscard]] auto DomainLeaveServiceRequestType() const; [[nodiscard]] auto IndividualizationServiceRequestType() const; [[nodiscard]] auto LicenseAcquirerServiceRequestType() const; [[nodiscard]] auto MeteringReportServiceRequestType() const; [[nodiscard]] auto RevocationServiceRequestType() const; [[nodiscard]] auto MediaProtectionSystemId() const; [[nodiscard]] auto PlayReadySecurityVersion() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics2 { [[nodiscard]] auto PlayReadyCertificateSecurityLevel() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics2; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics3 { [[nodiscard]] auto SecureStopServiceRequestType() const; auto CheckSupportedHardware(winrt::Windows::Media::Protection::PlayReady::PlayReadyHardwareDRMFeatures const& hwdrmFeature) const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics3; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics4 { [[nodiscard]] auto InputTrustAuthorityToCreate() const; [[nodiscard]] auto ProtectionSystemId() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics4; }; template struct consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics5 { [[nodiscard]] auto HardwareDRMDisabledAtTime() const; [[nodiscard]] auto HardwareDRMDisabledUntilTime() const; auto ResetHardwareDRMDisabled() const; }; template <> struct consume { template using type = consume_Windows_Media_Protection_PlayReady_IPlayReadyStatics5; }; } #endif