// WARNING: Please don't edit this file. It was generated by C++/WinRT // v2.0.250303.1 #pragma once #ifndef WINRT_Microsoft_Windows_AI_Imaging_0_H #define WINRT_Microsoft_Windows_AI_Imaging_0_H WINRT_EXPORT namespace winrt::Microsoft::Graphics::Imaging { struct ImageBuffer; } WINRT_EXPORT namespace winrt::Microsoft::Windows::AI { enum class AIFeatureReadyState : int32_t; } WINRT_EXPORT namespace winrt::Microsoft::Windows::AI::ContentSafety { struct ContentFilterOptions; } WINRT_EXPORT namespace winrt::Windows::Foundation { struct Point; } WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { template struct WINRT_IMPL_EMPTY_BASES IVector; } WINRT_EXPORT namespace winrt::Windows::Graphics { struct PointInt32; struct RectInt32; } WINRT_EXPORT namespace winrt::Windows::Graphics::Imaging { struct SoftwareBitmap; } WINRT_EXPORT namespace winrt::Microsoft::Windows::AI::Imaging { enum class ImageDescriptionKind : int32_t { BriefDescription = 0, DetailedDescription = 1, DiagramDescription = 2, AccessibleDescription = 3, }; enum class ImageDescriptionResultStatus : int32_t { Complete = 0, InProgress = 1, BlockedByPolicy = 2, ImageBlockedByContentModeration = 3, TextInImageBlockedByContentModeration = 4, DescriptionTextBlockedByContentModeration = 5, ImageHasTooMuchText = 6, InternalError = 7, }; enum class RecognizedLineStyle : int32_t { Handwritten = 0, }; struct IImageDescriptionGenerator; struct IImageDescriptionGeneratorStatics; struct IImageDescriptionResult; struct IImageObjectExtractor; struct IImageObjectExtractorHint; struct IImageObjectExtractorHintFactory; struct IImageObjectExtractorStatics; struct IImageObjectRemover; struct IImageObjectRemoverStatics; struct IImageScaler; struct IImageScalerStatics; struct IRecognizedLine; struct IRecognizedText; struct IRecognizedWord; struct ITextRecognizer; struct ITextRecognizerStatics; struct ImageDescriptionGenerator; struct ImageDescriptionResult; struct ImageObjectExtractor; struct ImageObjectExtractorHint; struct ImageObjectRemover; struct ImageScaler; struct RecognizedLine; struct RecognizedText; struct RecognizedWord; struct TextRecognizer; struct RecognizedTextBoundingBox; struct ImageDescriptionContract; struct ImageObjectExtractorContract; struct ImageObjectRemoverContract; struct ImageScalerContract; struct TextRecognitionContract; } namespace winrt::impl { template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGenerator> { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGeneratorStatics> { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionResult> { using type = interface_category; }; template <> struct category { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHint> { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHintFactory> { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorStatics> { using type = interface_category; }; template <> struct category { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::IImageObjectRemoverStatics> { 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< winrt::Microsoft::Windows::AI::Imaging::ITextRecognizerStatics> { using type = interface_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionGenerator> { using type = class_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionResult> { using type = class_category; }; template <> struct category { using type = class_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractorHint> { 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< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionResultStatus> { using type = enum_category; }; template <> struct category { using type = enum_category; }; template <> struct category< winrt::Microsoft::Windows::AI::Imaging::RecognizedTextBoundingBox> { using type = struct_category< winrt::Windows::Foundation::Point, winrt::Windows::Foundation::Point, winrt::Windows::Foundation::Point, winrt::Windows::Foundation::Point>; }; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageDescriptionGenerator"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageDescriptionResult"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageObjectExtractor"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageObjectExtractorHint"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageObjectRemover"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageScaler"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.RecognizedLine"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.RecognizedText"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.RecognizedWord"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.TextRecognizer"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageDescriptionKind"; template <> inline constexpr auto& name_v< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionResultStatus> = L"Microsoft.Windows.AI.Imaging.ImageDescriptionResultStatus"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.RecognizedLineStyle"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.RecognizedTextBoundingBox"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageDescriptionGenerator"; template <> inline constexpr auto& name_v< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGeneratorStatics> = L"Microsoft.Windows.AI.Imaging.IImageDescriptionGeneratorStatics"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageDescriptionResult"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageObjectExtractor"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageObjectExtractorHint"; template <> inline constexpr auto& name_v< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHintFactory> = L"Microsoft.Windows.AI.Imaging.IImageObjectExtractorHintFactory"; template <> inline constexpr auto& name_v< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorStatics> = L"Microsoft.Windows.AI.Imaging.IImageObjectExtractorStatics"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageObjectRemover"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageObjectRemoverStatics"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageScaler"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IImageScalerStatics"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IRecognizedLine"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IRecognizedText"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.IRecognizedWord"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ITextRecognizer"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ITextRecognizerStatics"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageDescriptionContract"; template <> inline constexpr auto& name_v< winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractorContract> = L"Microsoft.Windows.AI.Imaging.ImageObjectExtractorContract"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageObjectRemoverContract"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.ImageScalerContract"; template <> inline constexpr auto& name_v = L"Microsoft.Windows.AI.Imaging.TextRecognitionContract"; template <> inline constexpr guid guid_v{ 0x576B989E, 0x9829, 0x5682, {0x91, 0xB0, 0xA7, 0x11, 0x0F, 0xA7, 0xD5, 0x1E}}; // 576B989E-9829-5682-91B0-A7110FA7D51E template <> inline constexpr guid guid_v< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGeneratorStatics>{ 0x5FB50B2A, 0x5700, 0x55A7, {0xB4, 0x13, 0x60, 0x73, 0xB4, 0xB7, 0xF1, 0x75}}; // 5FB50B2A-5700-55A7-B413-6073B4B7F175 template <> inline constexpr guid guid_v{ 0xA066DD0C, 0x110B, 0x5275, {0xA6, 0x35, 0x52, 0xBE, 0xD7, 0x51, 0x9A, 0x2F}}; // A066DD0C-110B-5275-A635-52BED7519A2F template <> inline constexpr guid guid_v{ 0x2919FDC0, 0xD772, 0x5FD9, {0xA8, 0xB7, 0xFF, 0xB5, 0x60, 0x10, 0xC9, 0x9C}}; // 2919FDC0-D772-5FD9-A8B7-FFB56010C99C template <> inline constexpr guid guid_v{ 0x1BD8D67C, 0x8A7A, 0x5FE7, {0x98, 0xA5, 0xCB, 0xDF, 0xEB, 0x50, 0x94, 0x52}}; // 1BD8D67C-8A7A-5FE7-98A5-CBDFEB509452 template <> inline constexpr guid guid_v< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHintFactory>{ 0x5028F206, 0x145D, 0x5A70, {0x9A, 0x51, 0xE1, 0x7E, 0x60, 0xCF, 0xBA, 0xD8}}; // 5028F206-145D-5A70-9A51-E17E60CFBAD8 template <> inline constexpr guid guid_v< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorStatics>{ 0x38FA261E, 0x2C33, 0x54CB, {0x9E, 0x10, 0x98, 0xD5, 0x06, 0x85, 0x74, 0x3D}}; // 38FA261E-2C33-54CB-9E10-98D50685743D template <> inline constexpr guid guid_v{ 0xCFA20FAF, 0x5AE1, 0x5B8C, {0xB0, 0xD8, 0xE7, 0xC6, 0x4D, 0xB5, 0x9D, 0x26}}; // CFA20FAF-5AE1-5B8C-B0D8-E7C64DB59D26 template <> inline constexpr guid guid_v{ 0xCBCBD7E1, 0x5B81, 0x503F, {0x8F, 0xCB, 0x66, 0xAE, 0x1D, 0x6E, 0x5B, 0x9C}}; // CBCBD7E1-5B81-503F-8FCB-66AE1D6E5B9C template <> inline constexpr guid guid_v{ 0x06EEC88E, 0x91C5, 0x5326, {0x81, 0x28, 0x28, 0x07, 0xFA, 0xAF, 0xA5, 0x71}}; // 06EEC88E-91C5-5326-8128-2807FAAFA571 template <> inline constexpr guid guid_v{ 0x75380C81, 0x9C7F, 0x544B, {0x93, 0x37, 0x6E, 0x63, 0x8C, 0xFB, 0x46, 0x4A}}; // 75380C81-9C7F-544B-9337-6E638CFB464A template <> inline constexpr guid guid_v{ 0x612A6BE6, 0xF6BB, 0x53C9, {0x84, 0xCE, 0xF0, 0xA5, 0xE5, 0x65, 0xFA, 0xA7}}; // 612A6BE6-F6BB-53C9-84CE-F0A5E565FAA7 template <> inline constexpr guid guid_v{ 0xAE4766D3, 0x2924, 0x57A6, {0xB3, 0xD3, 0xB8, 0x66, 0xF5, 0x9B, 0x99, 0x72}}; // AE4766D3-2924-57A6-B3D3-B866F59B9972 template <> inline constexpr guid guid_v{ 0x6B53DAAB, 0x3410, 0x5088, {0x82, 0x6A, 0x07, 0x88, 0xA1, 0xEE, 0x3B, 0x52}}; // 6B53DAAB-3410-5088-826A-0788A1EE3B52 template <> inline constexpr guid guid_v{ 0xBE7BF6C0, 0x30F6, 0x570D, {0xBD, 0x92, 0x3F, 0xFE, 0x56, 0x65, 0xD9, 0x33}}; // BE7BF6C0-30F6-570D-BD92-3FFE5665D933 template <> inline constexpr guid guid_v{ 0x3788C2FD, 0xE496, 0x53AB, {0x85, 0xA7, 0xE5, 0x4A, 0x13, 0x58, 0x24, 0xE9}}; // 3788C2FD-E496-53AB-85A7-E54A135824E9 template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionGenerator> { using type = winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGenerator; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionResult> { using type = winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionResult; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractor> { using type = winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractor; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractorHint> { using type = winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHint; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::ImageObjectRemover> { using type = winrt::Microsoft::Windows::AI::Imaging::IImageObjectRemover; }; template <> struct default_interface { using type = winrt::Microsoft::Windows::AI::Imaging::IImageScaler; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::RecognizedLine> { using type = winrt::Microsoft::Windows::AI::Imaging::IRecognizedLine; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::RecognizedText> { using type = winrt::Microsoft::Windows::AI::Imaging::IRecognizedText; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::RecognizedWord> { using type = winrt::Microsoft::Windows::AI::Imaging::IRecognizedWord; }; template <> struct default_interface< winrt::Microsoft::Windows::AI::Imaging::TextRecognizer> { using type = winrt::Microsoft::Windows::AI::Imaging::ITextRecognizer; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall DescribeAsync(void*, int32_t, void*, void**) noexcept = 0; }; }; template <> struct abi< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGeneratorStatics> { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetReadyState(int32_t*) noexcept = 0; virtual int32_t __stdcall EnsureReadyAsync(void**) noexcept = 0; virtual int32_t __stdcall CreateAsync(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Description(void**) noexcept = 0; virtual int32_t __stdcall get_Status(int32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetSoftwareBitmapObjectMask(void*, void**) noexcept = 0; virtual int32_t __stdcall GetImageBufferObjectMask(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_IncludeRects(void**) noexcept = 0; virtual int32_t __stdcall get_IncludePoints(void**) noexcept = 0; virtual int32_t __stdcall get_ExcludePoints(void**) noexcept = 0; }; }; template <> struct abi< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHintFactory> { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, void*, void*, void**) noexcept = 0; }; }; template <> struct abi< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorStatics> { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateWithSoftwareBitmapAsync( void*, void**) noexcept = 0; virtual int32_t __stdcall CreateWithImageBufferAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall GetReadyState(int32_t*) noexcept = 0; virtual int32_t __stdcall EnsureReadyAsync(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall RemoveFromSoftwareBitmap(void*, void*, void**) noexcept = 0; virtual int32_t __stdcall RemoveFromImageBuffer(void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetReadyState(int32_t*) noexcept = 0; virtual int32_t __stdcall EnsureReadyAsync(void**) noexcept = 0; virtual int32_t __stdcall CreateAsync(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall ScaleSoftwareBitmap(void*, int32_t, int32_t, void**) noexcept = 0; virtual int32_t __stdcall ScaleImageBuffer(void*, int32_t, int32_t, void**) noexcept = 0; virtual int32_t __stdcall get_MaxSupportedScaleFactor( int32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetReadyState(int32_t*) noexcept = 0; virtual int32_t __stdcall EnsureReadyAsync(void**) noexcept = 0; virtual int32_t __stdcall CreateAsync(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Text(void**) noexcept = 0; virtual int32_t __stdcall get_BoundingBox( struct struct_Microsoft_Windows_AI_Imaging_RecognizedTextBoundingBox*) noexcept = 0; virtual int32_t __stdcall get_Words(uint32_t* __valueSize, void***) noexcept = 0; virtual int32_t __stdcall get_Style(int32_t*) noexcept = 0; virtual int32_t __stdcall get_LineStyleConfidence(float*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Lines(uint32_t* __valueSize, void***) noexcept = 0; virtual int32_t __stdcall get_TextAngle(float*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Text(void**) noexcept = 0; virtual int32_t __stdcall get_BoundingBox( struct struct_Microsoft_Windows_AI_Imaging_RecognizedTextBoundingBox*) noexcept = 0; virtual int32_t __stdcall get_MatchConfidence(float*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall RecognizeTextFromImageAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall RecognizeTextFromImage(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetReadyState(int32_t*) noexcept = 0; virtual int32_t __stdcall EnsureReadyAsync(void**) noexcept = 0; virtual int32_t __stdcall CreateAsync(void**) noexcept = 0; }; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageDescriptionGenerator { auto DescribeAsync( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& image, winrt::Microsoft::Windows::AI::Imaging::ImageDescriptionKind const& kind, winrt::Microsoft::Windows::AI::ContentSafety::ContentFilterOptions const& contentFilterOptions) const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGenerator> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageDescriptionGenerator; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageDescriptionGeneratorStatics { auto GetReadyState() const; auto EnsureReadyAsync() const; auto CreateAsync() const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionGeneratorStatics> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageDescriptionGeneratorStatics; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageDescriptionResult { [[nodiscard]] auto Description() const; [[nodiscard]] auto Status() const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageDescriptionResult> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageDescriptionResult; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractor { auto GetSoftwareBitmapObjectMask( winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractorHint const& hint) const; auto GetImageBufferObjectMask( winrt::Microsoft::Windows::AI::Imaging::ImageObjectExtractorHint const& hint) const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractor; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorHint { [[nodiscard]] auto IncludeRects() const; [[nodiscard]] auto IncludePoints() const; [[nodiscard]] auto ExcludePoints() const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHint> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorHint; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorHintFactory { auto CreateInstance( param::vector const& includeRects, param::vector const& includePoints, param::vector const& excludePoints) const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorHintFactory> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorHintFactory; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorStatics { auto CreateWithSoftwareBitmapAsync( winrt::Windows::Graphics::Imaging::SoftwareBitmap const& softwareBitmap) const; auto CreateWithImageBufferAsync( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBuffer) const; auto GetReadyState() const; auto EnsureReadyAsync() const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageObjectExtractorStatics> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectExtractorStatics; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectRemover { auto RemoveFromSoftwareBitmap( winrt::Windows::Graphics::Imaging::SoftwareBitmap const& softwareBitmap, winrt::Windows::Graphics::Imaging::SoftwareBitmap const& softwareBitmapMask) const; auto RemoveFromImageBuffer( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBuffer, winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBufferMask) const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectRemover; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageObjectRemoverStatics { auto GetReadyState() const; auto EnsureReadyAsync() const; auto CreateAsync() const; }; template <> struct consume< winrt::Microsoft::Windows::AI::Imaging::IImageObjectRemoverStatics> { template using type = consume_Microsoft_Windows_AI_Imaging_IImageObjectRemoverStatics; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageScaler { auto ScaleSoftwareBitmap( winrt::Windows::Graphics::Imaging::SoftwareBitmap const& softwareBitmap, int32_t width, int32_t height) const; auto ScaleImageBuffer( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBuffer, int32_t width, int32_t height) const; [[nodiscard]] auto MaxSupportedScaleFactor() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IImageScaler; }; template struct consume_Microsoft_Windows_AI_Imaging_IImageScalerStatics { auto GetReadyState() const; auto EnsureReadyAsync() const; auto CreateAsync() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IImageScalerStatics; }; template struct consume_Microsoft_Windows_AI_Imaging_IRecognizedLine { [[nodiscard]] auto Text() const; [[nodiscard]] auto BoundingBox() const; [[nodiscard]] auto Words() const; [[nodiscard]] auto Style() const; [[nodiscard]] auto LineStyleConfidence() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IRecognizedLine; }; template struct consume_Microsoft_Windows_AI_Imaging_IRecognizedText { [[nodiscard]] auto Lines() const; [[nodiscard]] auto TextAngle() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IRecognizedText; }; template struct consume_Microsoft_Windows_AI_Imaging_IRecognizedWord { [[nodiscard]] auto Text() const; [[nodiscard]] auto BoundingBox() const; [[nodiscard]] auto MatchConfidence() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_IRecognizedWord; }; template struct consume_Microsoft_Windows_AI_Imaging_ITextRecognizer { auto RecognizeTextFromImageAsync( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBuffer) const; auto RecognizeTextFromImage( winrt::Microsoft::Graphics::Imaging::ImageBuffer const& imageBuffer) const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_ITextRecognizer; }; template struct consume_Microsoft_Windows_AI_Imaging_ITextRecognizerStatics { auto GetReadyState() const; auto EnsureReadyAsync() const; auto CreateAsync() const; }; template <> struct consume { template using type = consume_Microsoft_Windows_AI_Imaging_ITextRecognizerStatics; }; struct struct_Microsoft_Windows_AI_Imaging_RecognizedTextBoundingBox { winrt::Windows::Foundation::Point BottomLeft; winrt::Windows::Foundation::Point BottomRight; winrt::Windows::Foundation::Point TopLeft; winrt::Windows::Foundation::Point TopRight; }; template <> struct abi { using type = struct_Microsoft_Windows_AI_Imaging_RecognizedTextBoundingBox; }; } // namespace winrt::impl #endif