// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_UI_Input_Inking_H #define WINRT_Windows_UI_Input_Inking_H #include "winrt/base.h" static_assert(winrt::check_version(CPPWINRT_VERSION, "2.0.250303.1"), "Mismatched C++/WinRT headers."); #define CPPWINRT_VERSION "2.0.250303.1" #include "winrt/Windows.UI.Input.h" #include "winrt/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.Foundation.Numerics.2.h" #include "winrt/impl/Windows.Storage.Streams.2.h" #include "winrt/impl/Windows.UI.2.h" #include "winrt/impl/Windows.UI.Core.2.h" #include "winrt/impl/Windows.UI.Input.2.h" #include "winrt/impl/Windows.UI.Input.Inking.2.h" namespace winrt::impl { template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::Color() const { winrt::Windows::UI::Color value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Color(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Color(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::Color(winrt::Windows::UI::Color const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Color(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Color(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::PenTip() const { winrt::Windows::UI::Input::Inking::PenTipShape value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PenTip(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PenTip(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::PenTip(winrt::Windows::UI::Input::Inking::PenTipShape const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_PenTip(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PenTip(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::Size() const { winrt::Windows::Foundation::Size value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Size(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Size(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::Size(winrt::Windows::Foundation::Size const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Size(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Size(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::IgnorePressure() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IgnorePressure(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IgnorePressure(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::IgnorePressure(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IgnorePressure(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IgnorePressure(value)); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::FitToCurve() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_FitToCurve(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FitToCurve(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes::FitToCurve(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_FitToCurve(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_FitToCurve(value)); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes2::PenTipTransform() const { winrt::Windows::Foundation::Numerics::float3x2 value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PenTipTransform(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PenTipTransform(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes2::PenTipTransform(winrt::Windows::Foundation::Numerics::float3x2 const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_PenTipTransform(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PenTipTransform(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes2::DrawAsHighlighter() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_DrawAsHighlighter(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DrawAsHighlighter(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes2::DrawAsHighlighter(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_DrawAsHighlighter(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_DrawAsHighlighter(value)); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes3::Kind() const { winrt::Windows::UI::Input::Inking::InkDrawingAttributesKind value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Kind(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Kind(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes3::PencilProperties() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PencilProperties(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PencilProperties(&value)); } return winrt::Windows::UI::Input::Inking::InkDrawingAttributesPencilProperties{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes4::IgnoreTilt() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IgnoreTilt(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IgnoreTilt(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes4::IgnoreTilt(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IgnoreTilt(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IgnoreTilt(value)); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributes5::ModelerAttributes() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ModelerAttributes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ModelerAttributes(&value)); } return winrt::Windows::UI::Input::Inking::InkModelerAttributes{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributesPencilProperties::Opacity() const { double value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Opacity(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Opacity(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributesPencilProperties::Opacity(double value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Opacity(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Opacity(value)); } } template auto consume_Windows_UI_Input_Inking_IInkDrawingAttributesStatics::CreateForPencil() const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateForPencil(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateForPencil(&result)); } return winrt::Windows::UI::Input::Inking::InkDrawingAttributes{ result, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration::IsPrimaryBarrelButtonInputEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsPrimaryBarrelButtonInputEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsPrimaryBarrelButtonInputEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration::IsPrimaryBarrelButtonInputEnabled(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsPrimaryBarrelButtonInputEnabled(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsPrimaryBarrelButtonInputEnabled(value)); } } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration::IsEraserInputEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsEraserInputEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsEraserInputEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration::IsEraserInputEnabled(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsEraserInputEnabled(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsEraserInputEnabled(value)); } } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration2::IsPenHapticFeedbackEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsPenHapticFeedbackEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsPenHapticFeedbackEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkInputConfiguration2::IsPenHapticFeedbackEnabled(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsPenHapticFeedbackEnabled(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsPenHapticFeedbackEnabled(value)); } } template auto consume_Windows_UI_Input_Inking_IInkInputProcessingConfiguration::Mode() const { winrt::Windows::UI::Input::Inking::InkInputProcessingMode value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Mode(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Mode(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkInputProcessingConfiguration::Mode(winrt::Windows::UI::Input::Inking::InkInputProcessingMode const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkInputProcessingConfiguration::RightDragAction() const { winrt::Windows::UI::Input::Inking::InkInputRightDragAction value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_RightDragAction(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RightDragAction(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkInputProcessingConfiguration::RightDragAction(winrt::Windows::UI::Input::Inking::InkInputRightDragAction const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_RightDragAction(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_RightDragAction(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkManager::Mode() const { winrt::Windows::UI::Input::Inking::InkManipulationMode value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Mode(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Mode(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkManager::Mode(winrt::Windows::UI::Input::Inking::InkManipulationMode const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Mode(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkManager::ProcessPointerDown(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ProcessPointerDown(*(void**)(&pointerPoint))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ProcessPointerDown(*(void**)(&pointerPoint))); } } template auto consume_Windows_UI_Input_Inking_IInkManager::ProcessPointerUpdate(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { void* updateInformation{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ProcessPointerUpdate(*(void**)(&pointerPoint), &updateInformation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ProcessPointerUpdate(*(void**)(&pointerPoint), &updateInformation)); } return winrt::Windows::Foundation::IInspectable{ updateInformation, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkManager::ProcessPointerUp(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { winrt::Windows::Foundation::Rect updateRectangle{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ProcessPointerUp(*(void**)(&pointerPoint), put_abi(updateRectangle))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ProcessPointerUp(*(void**)(&pointerPoint), put_abi(updateRectangle))); } return updateRectangle; } template auto consume_Windows_UI_Input_Inking_IInkManager::SetDefaultDrawingAttributes(winrt::Windows::UI::Input::Inking::InkDrawingAttributes const& drawingAttributes) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetDefaultDrawingAttributes(*(void**)(&drawingAttributes))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetDefaultDrawingAttributes(*(void**)(&drawingAttributes))); } } template auto consume_Windows_UI_Input_Inking_IInkManager::RecognizeAsync(winrt::Windows::UI::Input::Inking::InkRecognitionTarget const& recognitionTarget) const { void* recognitionResults{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->RecognizeAsync2(static_cast(recognitionTarget), &recognitionResults)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RecognizeAsync2(static_cast(recognitionTarget), &recognitionResults)); } return winrt::Windows::Foundation::IAsyncOperation>{ recognitionResults, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes::PredictionTime() const { winrt::Windows::Foundation::TimeSpan value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PredictionTime(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PredictionTime(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes::PredictionTime(winrt::Windows::Foundation::TimeSpan const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_PredictionTime(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PredictionTime(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes::ScalingFactor() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ScalingFactor(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ScalingFactor(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes::ScalingFactor(float value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ScalingFactor(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ScalingFactor(value)); } } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes2::UseVelocityBasedPressure() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_UseVelocityBasedPressure(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UseVelocityBasedPressure(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkModelerAttributes2::UseVelocityBasedPressure(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_UseVelocityBasedPressure(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_UseVelocityBasedPressure(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPoint::Position() const { winrt::Windows::Foundation::Point value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Position(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Position(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPoint::Pressure() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Pressure(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Pressure(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPoint2::TiltX() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_TiltX(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TiltX(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPoint2::TiltY() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_TiltY(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TiltY(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPoint2::Timestamp() const { uint64_t value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Timestamp(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Timestamp(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPointFactory::CreateInkPoint(winrt::Windows::Foundation::Point const& position, float pressure) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInkPoint(impl::bind_in(position), pressure, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInkPoint(impl::bind_in(position), pressure, &result)); } return winrt::Windows::UI::Input::Inking::InkPoint{ result, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPointFactory2::CreateInkPointWithTiltAndTimestamp(winrt::Windows::Foundation::Point const& position, float pressure, float tiltX, float tiltY, uint64_t timestamp) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateInkPointWithTiltAndTimestamp(impl::bind_in(position), pressure, tiltX, tiltY, timestamp, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInkPointWithTiltAndTimestamp(impl::bind_in(position), pressure, tiltX, tiltY, timestamp, &result)); } return winrt::Windows::UI::Input::Inking::InkPoint{ result, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::IsInputEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsInputEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsInputEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::IsInputEnabled(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsInputEnabled(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsInputEnabled(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::InputDeviceTypes() const { winrt::Windows::UI::Core::CoreInputDeviceTypes value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_InputDeviceTypes(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InputDeviceTypes(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::InputDeviceTypes(winrt::Windows::UI::Core::CoreInputDeviceTypes const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_InputDeviceTypes(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_InputDeviceTypes(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::UnprocessedInput() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_UnprocessedInput(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UnprocessedInput(&value)); } return winrt::Windows::UI::Input::Inking::InkUnprocessedInput{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokeInput() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_StrokeInput(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_StrokeInput(&value)); } return winrt::Windows::UI::Input::Inking::InkStrokeInput{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::InputProcessingConfiguration() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_InputProcessingConfiguration(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InputProcessingConfiguration(&value)); } return winrt::Windows::UI::Input::Inking::InkInputProcessingConfiguration{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokeContainer() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_StrokeContainer(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_StrokeContainer(&value)); } return winrt::Windows::UI::Input::Inking::InkStrokeContainer{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokeContainer(winrt::Windows::UI::Input::Inking::InkStrokeContainer const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_StrokeContainer(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_StrokeContainer(*(void**)(&value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::CopyDefaultDrawingAttributes() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CopyDefaultDrawingAttributes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CopyDefaultDrawingAttributes(&value)); } return winrt::Windows::UI::Input::Inking::InkDrawingAttributes{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::UpdateDefaultDrawingAttributes(winrt::Windows::UI::Input::Inking::InkDrawingAttributes const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->UpdateDefaultDrawingAttributes(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->UpdateDefaultDrawingAttributes(*(void**)(&value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::ActivateCustomDrying() const { void* inkSynchronizer{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->ActivateCustomDrying(&inkSynchronizer)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ActivateCustomDrying(&inkSynchronizer)); } return winrt::Windows::UI::Input::Inking::InkSynchronizer{ inkSynchronizer, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::SetPredefinedConfiguration(winrt::Windows::UI::Input::Inking::InkPresenterPredefinedConfiguration const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetPredefinedConfiguration(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetPredefinedConfiguration(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesCollected(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokesCollected(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokesCollected(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesCollected(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokesCollected(handler)); } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesCollected(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokesCollected(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokesCollected(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesErased(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokesErased(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokesErased(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesErased(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokesErased(handler)); } template auto consume_Windows_UI_Input_Inking_IInkPresenter::StrokesErased(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokesErased(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokesErased(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter2::HighContrastAdjustment() const { winrt::Windows::UI::Input::Inking::InkHighContrastAdjustment value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_HighContrastAdjustment(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_HighContrastAdjustment(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenter2::HighContrastAdjustment(winrt::Windows::UI::Input::Inking::InkHighContrastAdjustment const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_HighContrastAdjustment(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_HighContrastAdjustment(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenter3::InputConfiguration() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_InputConfiguration(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InputConfiguration(&value)); } return winrt::Windows::UI::Input::Inking::InkInputConfiguration{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AreTickMarksVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_AreTickMarksVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AreTickMarksVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AreTickMarksVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_AreTickMarksVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AreTickMarksVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AreRaysVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_AreRaysVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AreRaysVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AreRaysVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_AreRaysVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AreRaysVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsCenterMarkerVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsCenterMarkerVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsCenterMarkerVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsCenterMarkerVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsCenterMarkerVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsCenterMarkerVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsAngleReadoutVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsAngleReadoutVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsAngleReadoutVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsAngleReadoutVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsAngleReadoutVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsAngleReadoutVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsResizable() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsResizable(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsResizable(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::IsResizable(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsResizable(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsResizable(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::Radius() const { double value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Radius(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Radius(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::Radius(double value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Radius(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Radius(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AccentColor() const { winrt::Windows::UI::Color value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_AccentColor(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AccentColor(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractor::AccentColor(winrt::Windows::UI::Color const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_AccentColor(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AccentColor(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterProtractorFactory::Create(winrt::Windows::UI::Input::Inking::InkPresenter const& inkPresenter) const { void* inkPresenterProtractor{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Create(*(void**)(&inkPresenter), &inkPresenterProtractor)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Create(*(void**)(&inkPresenter), &inkPresenterProtractor)); } return winrt::Windows::UI::Input::Inking::InkPresenterProtractor{ inkPresenterProtractor, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler::Length() const { double value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Length(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Length(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler::Length(double value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Length(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Length(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler::Width() const { double value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Width(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Width(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler::Width(double value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Width(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Width(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler2::AreTickMarksVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_AreTickMarksVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AreTickMarksVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler2::AreTickMarksVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_AreTickMarksVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AreTickMarksVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler2::IsCompassVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsCompassVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsCompassVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterRuler2::IsCompassVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsCompassVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsCompassVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterRulerFactory::Create(winrt::Windows::UI::Input::Inking::InkPresenter const& inkPresenter) const { void* inkPresenterRuler{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Create(*(void**)(&inkPresenter), &inkPresenterRuler)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Create(*(void**)(&inkPresenter), &inkPresenterRuler)); } return winrt::Windows::UI::Input::Inking::InkPresenterRuler{ inkPresenterRuler, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::Kind() const { winrt::Windows::UI::Input::Inking::InkPresenterStencilKind value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Kind(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Kind(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::IsVisible() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsVisible(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsVisible(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::IsVisible(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_IsVisible(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsVisible(value)); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::BackgroundColor() const { winrt::Windows::UI::Color value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BackgroundColor(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BackgroundColor(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::BackgroundColor(winrt::Windows::UI::Color const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_BackgroundColor(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_BackgroundColor(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::ForegroundColor() const { winrt::Windows::UI::Color value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_ForegroundColor(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ForegroundColor(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::ForegroundColor(winrt::Windows::UI::Color const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_ForegroundColor(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ForegroundColor(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::Transform() const { winrt::Windows::Foundation::Numerics::float3x2 value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Transform(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Transform(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkPresenterStencil::Transform(winrt::Windows::Foundation::Numerics::float3x2 const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Transform(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Transform(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkRecognitionResult::BoundingRect() const { winrt::Windows::Foundation::Rect boundingRect{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(boundingRect))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(boundingRect))); } return boundingRect; } template auto consume_Windows_UI_Input_Inking_IInkRecognitionResult::GetTextCandidates() const { void* textCandidates{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetTextCandidates(&textCandidates)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetTextCandidates(&textCandidates)); } return winrt::Windows::Foundation::Collections::IVectorView{ textCandidates, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkRecognitionResult::GetStrokes() const { void* strokes{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetStrokes(&strokes)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetStrokes(&strokes)); } return winrt::Windows::Foundation::Collections::IVectorView{ strokes, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkRecognizer::Name() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Name(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Name(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkRecognizerContainer::SetDefaultRecognizer(winrt::Windows::UI::Input::Inking::InkRecognizer const& recognizer) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetDefaultRecognizer(*(void**)(&recognizer))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetDefaultRecognizer(*(void**)(&recognizer))); } } template auto consume_Windows_UI_Input_Inking_IInkRecognizerContainer::RecognizeAsync(winrt::Windows::UI::Input::Inking::InkStrokeContainer const& strokeCollection, winrt::Windows::UI::Input::Inking::InkRecognitionTarget const& recognitionTarget) const { void* recognitionResults{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->RecognizeAsync(*(void**)(&strokeCollection), static_cast(recognitionTarget), &recognitionResults)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RecognizeAsync(*(void**)(&strokeCollection), static_cast(recognitionTarget), &recognitionResults)); } return winrt::Windows::Foundation::IAsyncOperation>{ recognitionResults, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkRecognizerContainer::GetRecognizers() const { void* recognizerView{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetRecognizers(&recognizerView)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRecognizers(&recognizerView)); } return winrt::Windows::Foundation::Collections::IVectorView{ recognizerView, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke::DrawingAttributes() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_DrawingAttributes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DrawingAttributes(&value)); } return winrt::Windows::UI::Input::Inking::InkDrawingAttributes{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke::DrawingAttributes(winrt::Windows::UI::Input::Inking::InkDrawingAttributes const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_DrawingAttributes(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_DrawingAttributes(*(void**)(&value))); } } template auto consume_Windows_UI_Input_Inking_IInkStroke::BoundingRect() const { winrt::Windows::Foundation::Rect value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStroke::Selected() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Selected(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Selected(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStroke::Selected(bool value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_Selected(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Selected(value)); } } template auto consume_Windows_UI_Input_Inking_IInkStroke::Recognized() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Recognized(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Recognized(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStroke::GetRenderingSegments() const { void* renderingSegments{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetRenderingSegments(&renderingSegments)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRenderingSegments(&renderingSegments)); } return winrt::Windows::Foundation::Collections::IVectorView{ renderingSegments, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke::Clone() const { void* clonedStroke{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Clone(&clonedStroke)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Clone(&clonedStroke)); } return winrt::Windows::UI::Input::Inking::InkStroke{ clonedStroke, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke2::PointTransform() const { winrt::Windows::Foundation::Numerics::float3x2 value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PointTransform(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PointTransform(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStroke2::PointTransform(winrt::Windows::Foundation::Numerics::float3x2 const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_PointTransform(impl::bind_in(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PointTransform(impl::bind_in(value))); } } template auto consume_Windows_UI_Input_Inking_IInkStroke2::GetInkPoints() const { void* inkPoints{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetInkPoints(&inkPoints)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetInkPoints(&inkPoints)); } return winrt::Windows::Foundation::Collections::IVectorView{ inkPoints, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke3::Id() const { uint32_t value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Id(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Id(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStroke3::StrokeStartedTime() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_StrokeStartedTime(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_StrokeStartedTime(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke3::StrokeStartedTime(winrt::Windows::Foundation::IReference const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_StrokeStartedTime(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_StrokeStartedTime(*(void**)(&value))); } } template auto consume_Windows_UI_Input_Inking_IInkStroke3::StrokeDuration() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_StrokeDuration(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_StrokeDuration(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStroke3::StrokeDuration(winrt::Windows::Foundation::IReference const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->put_StrokeDuration(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_StrokeDuration(*(void**)(&value))); } } template auto consume_Windows_UI_Input_Inking_IInkStroke4::PointerId() const { uint32_t value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PointerId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PointerId(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder::BeginStroke(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->BeginStroke(*(void**)(&pointerPoint))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->BeginStroke(*(void**)(&pointerPoint))); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder::AppendToStroke(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { void* previousPointerPoint{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->AppendToStroke(*(void**)(&pointerPoint), &previousPointerPoint)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AppendToStroke(*(void**)(&pointerPoint), &previousPointerPoint)); } return winrt::Windows::UI::Input::PointerPoint{ previousPointerPoint, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder::EndStroke(winrt::Windows::UI::Input::PointerPoint const& pointerPoint) const { void* stroke{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->EndStroke(*(void**)(&pointerPoint), &stroke)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->EndStroke(*(void**)(&pointerPoint), &stroke)); } return winrt::Windows::UI::Input::Inking::InkStroke{ stroke, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder::CreateStroke(param::iterable const& points) const { void* stroke{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateStroke(*(void**)(&points), &stroke)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateStroke(*(void**)(&points), &stroke)); } return winrt::Windows::UI::Input::Inking::InkStroke{ stroke, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder::SetDefaultDrawingAttributes(winrt::Windows::UI::Input::Inking::InkDrawingAttributes const& drawingAttributes) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetDefaultDrawingAttributes(*(void**)(&drawingAttributes))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetDefaultDrawingAttributes(*(void**)(&drawingAttributes))); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder2::CreateStrokeFromInkPoints(param::iterable const& inkPoints, winrt::Windows::Foundation::Numerics::float3x2 const& transform) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateStrokeFromInkPoints(*(void**)(&inkPoints), impl::bind_in(transform), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateStrokeFromInkPoints(*(void**)(&inkPoints), impl::bind_in(transform), &result)); } return winrt::Windows::UI::Input::Inking::InkStroke{ result, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeBuilder3::CreateStrokeFromInkPoints(param::iterable const& inkPoints, winrt::Windows::Foundation::Numerics::float3x2 const& transform, winrt::Windows::Foundation::IReference const& strokeStartedTime, winrt::Windows::Foundation::IReference const& strokeDuration) const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CreateStrokeFromInkPoints(*(void**)(&inkPoints), impl::bind_in(transform), *(void**)(&strokeStartedTime), *(void**)(&strokeDuration), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateStrokeFromInkPoints(*(void**)(&inkPoints), impl::bind_in(transform), *(void**)(&strokeStartedTime), *(void**)(&strokeDuration), &result)); } return winrt::Windows::UI::Input::Inking::InkStroke{ result, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::BoundingRect() const { winrt::Windows::Foundation::Rect value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BoundingRect(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::AddStroke(winrt::Windows::UI::Input::Inking::InkStroke const& stroke) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->AddStroke(*(void**)(&stroke))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AddStroke(*(void**)(&stroke))); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::DeleteSelected() const { winrt::Windows::Foundation::Rect invalidatedRect{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->DeleteSelected(put_abi(invalidatedRect))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->DeleteSelected(put_abi(invalidatedRect))); } return invalidatedRect; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::MoveSelected(winrt::Windows::Foundation::Point const& translation) const { winrt::Windows::Foundation::Rect invalidatedRectangle{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MoveSelected(impl::bind_in(translation), put_abi(invalidatedRectangle))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MoveSelected(impl::bind_in(translation), put_abi(invalidatedRectangle))); } return invalidatedRectangle; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::SelectWithPolyLine(param::iterable const& polyline) const { winrt::Windows::Foundation::Rect invalidatedRectangle{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SelectWithPolyLine(*(void**)(&polyline), put_abi(invalidatedRectangle))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectWithPolyLine(*(void**)(&polyline), put_abi(invalidatedRectangle))); } return invalidatedRectangle; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::SelectWithLine(winrt::Windows::Foundation::Point const& from, winrt::Windows::Foundation::Point const& to) const { winrt::Windows::Foundation::Rect invalidatedRectangle{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SelectWithLine(impl::bind_in(from), impl::bind_in(to), put_abi(invalidatedRectangle))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SelectWithLine(impl::bind_in(from), impl::bind_in(to), put_abi(invalidatedRectangle))); } return invalidatedRectangle; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::CopySelectedToClipboard() const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CopySelectedToClipboard()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CopySelectedToClipboard()); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::PasteFromClipboard(winrt::Windows::Foundation::Point const& position) const { winrt::Windows::Foundation::Rect invalidatedRectangle{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->PasteFromClipboard(impl::bind_in(position), put_abi(invalidatedRectangle))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->PasteFromClipboard(impl::bind_in(position), put_abi(invalidatedRectangle))); } return invalidatedRectangle; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::CanPasteFromClipboard() const { bool canPaste{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->CanPasteFromClipboard(&canPaste)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CanPasteFromClipboard(&canPaste)); } return canPaste; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::LoadAsync(winrt::Windows::Storage::Streams::IInputStream const& inputStream) const { void* loadAction{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->LoadAsync(*(void**)(&inputStream), &loadAction)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->LoadAsync(*(void**)(&inputStream), &loadAction)); } return winrt::Windows::Foundation::IAsyncActionWithProgress{ loadAction, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::SaveAsync(winrt::Windows::Storage::Streams::IOutputStream const& outputStream) const { void* outputStreamOperation{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SaveAsync(*(void**)(&outputStream), &outputStreamOperation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SaveAsync(*(void**)(&outputStream), &outputStreamOperation)); } return winrt::Windows::Foundation::IAsyncOperationWithProgress{ outputStreamOperation, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::UpdateRecognitionResults(param::vector_view const& recognitionResults) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->UpdateRecognitionResults(*(void**)(&recognitionResults))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->UpdateRecognitionResults(*(void**)(&recognitionResults))); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::GetStrokes() const { void* strokeView{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetStrokes(&strokeView)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetStrokes(&strokeView)); } return winrt::Windows::Foundation::Collections::IVectorView{ strokeView, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer::GetRecognitionResults() const { void* recognitionResults{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetRecognitionResults(&recognitionResults)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRecognitionResults(&recognitionResults)); } return winrt::Windows::Foundation::Collections::IVectorView{ recognitionResults, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer2::AddStrokes(param::iterable const& strokes) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->AddStrokes(*(void**)(&strokes))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AddStrokes(*(void**)(&strokes))); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer2::Clear() const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->Clear()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Clear()); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer3::SaveAsync(winrt::Windows::Storage::Streams::IOutputStream const& outputStream, winrt::Windows::UI::Input::Inking::InkPersistenceFormat const& inkPersistenceFormat) const { void* outputStreamOperation{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SaveWithFormatAsync(*(void**)(&outputStream), static_cast(inkPersistenceFormat), &outputStreamOperation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SaveWithFormatAsync(*(void**)(&outputStream), static_cast(inkPersistenceFormat), &outputStreamOperation)); } return winrt::Windows::Foundation::IAsyncOperationWithProgress{ outputStreamOperation, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeContainer3::GetStrokeById(uint32_t id) const { void* stroke{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetStrokeById(id, &stroke)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetStrokeById(id, &stroke)); } return winrt::Windows::UI::Input::Inking::InkStroke{ stroke, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeStarted(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokeStarted(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokeStarted(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeStarted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokeStarted(handler)); } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeStarted(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokeStarted(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokeStarted(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeContinued(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokeContinued(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokeContinued(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeContinued(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokeContinued(handler)); } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeContinued(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokeContinued(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokeContinued(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeEnded(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokeEnded(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokeEnded(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeEnded(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokeEnded(handler)); } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeEnded(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokeEnded(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokeEnded(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeCanceled(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_StrokeCanceled(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StrokeCanceled(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeCanceled(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StrokeCanceled(handler)); } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::StrokeCanceled(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_StrokeCanceled(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StrokeCanceled(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkStrokeInput::InkPresenter() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_InkPresenter(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InkPresenter(&value)); } return winrt::Windows::UI::Input::Inking::InkPresenter{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::Position() const { winrt::Windows::Foundation::Point value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Position(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Position(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::BezierControlPoint1() const { winrt::Windows::Foundation::Point value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BezierControlPoint1(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BezierControlPoint1(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::BezierControlPoint2() const { winrt::Windows::Foundation::Point value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_BezierControlPoint2(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_BezierControlPoint2(put_abi(value))); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::Pressure() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Pressure(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Pressure(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::TiltX() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_TiltX(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TiltX(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::TiltY() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_TiltY(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TiltY(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokeRenderingSegment::Twist() const { float value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Twist(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Twist(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IInkStrokesCollectedEventArgs::Strokes() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Strokes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Strokes(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkStrokesErasedEventArgs::Strokes() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Strokes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Strokes(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkSynchronizer::BeginDry() const { void* inkStrokes{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->BeginDry(&inkStrokes)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->BeginDry(&inkStrokes)); } return winrt::Windows::Foundation::Collections::IVectorView{ inkStrokes, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IInkSynchronizer::EndDry() const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->EndDry()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->EndDry()); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerEntered(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerEntered(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerEntered(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerEntered(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerEntered(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerEntered(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerEntered(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerEntered(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerHovered(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerHovered(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerHovered(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerHovered(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerHovered(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerHovered(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerHovered(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerHovered(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerExited(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerExited(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerExited(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerExited(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerExited(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerExited(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerExited(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerExited(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerPressed(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerPressed(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerPressed(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerPressed(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerPressed(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerPressed(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerPressed(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerPressed(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerMoved(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerMoved(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerMoved(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerMoved(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerMoved(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerMoved(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerMoved(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerMoved(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerReleased(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerReleased(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerReleased(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerReleased(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerReleased(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerReleased(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerReleased(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerReleased(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerLost(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token cookie{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->add_PointerLost(*(void**)(&handler), put_abi(cookie))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_PointerLost(*(void**)(&handler), put_abi(cookie))); } return cookie; } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerLost(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, PointerLost(handler)); } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::PointerLost(winrt::event_token const& cookie) const noexcept { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; _winrt_abi_type->remove_PointerLost(impl::bind_in(cookie)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_PointerLost(impl::bind_in(cookie)); } } template auto consume_Windows_UI_Input_Inking_IInkUnprocessedInput::InkPresenter() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_InkPresenter(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InkPresenter(&value)); } return winrt::Windows::UI::Input::Inking::InkPresenter{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::IsHandwritingDirectlyIntoTextFieldEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsHandwritingDirectlyIntoTextFieldEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsHandwritingDirectlyIntoTextFieldEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::PenHandedness() const { winrt::Windows::UI::Input::Inking::PenHandedness value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_PenHandedness(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PenHandedness(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::HandwritingLineHeight() const { winrt::Windows::UI::Input::Inking::HandwritingLineHeight value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_HandwritingLineHeight(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_HandwritingLineHeight(reinterpret_cast(&value))); } return value; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::FontFamilyName() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_FontFamilyName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FontFamilyName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::UserConsentsToHandwritingTelemetryCollection() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_UserConsentsToHandwritingTelemetryCollection(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UserConsentsToHandwritingTelemetryCollection(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings::IsTouchHandwritingEnabled() const { bool value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_IsTouchHandwritingEnabled(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsTouchHandwritingEnabled(&value)); } return value; } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettings2::SetPenHandedness(winrt::Windows::UI::Input::Inking::PenHandedness const& value) const { if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->SetPenHandedness(static_cast(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetPenHandedness(static_cast(value))); } } template auto consume_Windows_UI_Input_Inking_IPenAndInkSettingsStatics::GetDefault() const { void* result{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetDefault(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetDefault(&result)); } return winrt::Windows::UI::Input::Inking::PenAndInkSettings{ result, take_ownership_from_abi }; } #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Color(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Color()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Color(struct struct_Windows_UI_Color value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Color(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PenTip(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PenTip()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PenTip(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PenTip(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Size(winrt::Windows::Foundation::Size* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Size()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Size(winrt::Windows::Foundation::Size value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Size(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IgnorePressure(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IgnorePressure()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IgnorePressure(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IgnorePressure(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FitToCurve(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FitToCurve()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_FitToCurve(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().FitToCurve(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PenTipTransform(winrt::Windows::Foundation::Numerics::float3x2* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PenTipTransform()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PenTipTransform(winrt::Windows::Foundation::Numerics::float3x2 value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PenTipTransform(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DrawAsHighlighter(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DrawAsHighlighter()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_DrawAsHighlighter(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().DrawAsHighlighter(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Kind(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Kind()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PencilProperties(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PencilProperties()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IgnoreTilt(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IgnoreTilt()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IgnoreTilt(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IgnoreTilt(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ModelerAttributes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ModelerAttributes()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Opacity(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Opacity()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Opacity(double value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Opacity(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateForPencil(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CreateForPencil()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsPrimaryBarrelButtonInputEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsPrimaryBarrelButtonInputEnabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsPrimaryBarrelButtonInputEnabled(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsPrimaryBarrelButtonInputEnabled(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsEraserInputEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsEraserInputEnabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsEraserInputEnabled(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsEraserInputEnabled(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsPenHapticFeedbackEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsPenHapticFeedbackEnabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsPenHapticFeedbackEnabled(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsPenHapticFeedbackEnabled(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Mode(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Mode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Mode(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Mode(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RightDragAction(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RightDragAction()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_RightDragAction(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RightDragAction(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Mode(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Mode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Mode(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Mode(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ProcessPointerDown(void* pointerPoint) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ProcessPointerDown(*reinterpret_cast(&pointerPoint)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ProcessPointerUpdate(void* pointerPoint, void** updateInformation) noexcept final try { clear_abi(updateInformation); typename D::abi_guard guard(this->shim()); *updateInformation = detach_from(this->shim().ProcessPointerUpdate(*reinterpret_cast(&pointerPoint))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ProcessPointerUp(void* pointerPoint, winrt::Windows::Foundation::Rect* updateRectangle) noexcept final try { zero_abi(updateRectangle); typename D::abi_guard guard(this->shim()); *updateRectangle = detach_from(this->shim().ProcessPointerUp(*reinterpret_cast(&pointerPoint))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetDefaultDrawingAttributes(void* drawingAttributes) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetDefaultDrawingAttributes(*reinterpret_cast(&drawingAttributes)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RecognizeAsync2(int32_t recognitionTarget, void** recognitionResults) noexcept final try { clear_abi(recognitionResults); typename D::abi_guard guard(this->shim()); *recognitionResults = detach_from>>(this->shim().RecognizeAsync(*reinterpret_cast(&recognitionTarget))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PredictionTime(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PredictionTime()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PredictionTime(int64_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PredictionTime(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ScalingFactor(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ScalingFactor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ScalingFactor(float value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ScalingFactor(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_UseVelocityBasedPressure(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UseVelocityBasedPressure()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_UseVelocityBasedPressure(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UseVelocityBasedPressure(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Position(winrt::Windows::Foundation::Point* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Position()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Pressure(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Pressure()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_TiltX(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TiltX()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TiltY(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TiltY()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Timestamp(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Timestamp()); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall CreateInkPoint(winrt::Windows::Foundation::Point position, float pressure, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CreateInkPoint(*reinterpret_cast(&position), pressure)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInkPointWithTiltAndTimestamp(winrt::Windows::Foundation::Point position, float pressure, float tiltX, float tiltY, uint64_t timestamp, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CreateInkPointWithTiltAndTimestamp(*reinterpret_cast(&position), pressure, tiltX, tiltY, timestamp)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsInputEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsInputEnabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsInputEnabled(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsInputEnabled(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InputDeviceTypes(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InputDeviceTypes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_InputDeviceTypes(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().InputDeviceTypes(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UnprocessedInput(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UnprocessedInput()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_StrokeInput(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().StrokeInput()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InputProcessingConfiguration(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InputProcessingConfiguration()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_StrokeContainer(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().StrokeContainer()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_StrokeContainer(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StrokeContainer(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CopyDefaultDrawingAttributes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CopyDefaultDrawingAttributes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UpdateDefaultDrawingAttributes(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateDefaultDrawingAttributes(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ActivateCustomDrying(void** inkSynchronizer) noexcept final try { clear_abi(inkSynchronizer); typename D::abi_guard guard(this->shim()); *inkSynchronizer = detach_from(this->shim().ActivateCustomDrying()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetPredefinedConfiguration(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetPredefinedConfiguration(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall add_StrokesCollected(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokesCollected(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokesCollected(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokesCollected(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_StrokesErased(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokesErased(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokesErased(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokesErased(*reinterpret_cast(&cookie)); return 0; } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_HighContrastAdjustment(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HighContrastAdjustment()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_HighContrastAdjustment(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().HighContrastAdjustment(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_InputConfiguration(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InputConfiguration()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_AreTickMarksVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AreTickMarksVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AreTickMarksVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AreTickMarksVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AreRaysVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AreRaysVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AreRaysVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AreRaysVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCenterMarkerVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCenterMarkerVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsCenterMarkerVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsCenterMarkerVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsAngleReadoutVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsAngleReadoutVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsAngleReadoutVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsAngleReadoutVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsResizable(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsResizable()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsResizable(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsResizable(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Radius(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Radius()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Radius(double value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Radius(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AccentColor(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AccentColor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AccentColor(struct struct_Windows_UI_Color value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AccentColor(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall Create(void* inkPresenter, void** inkPresenterProtractor) noexcept final try { clear_abi(inkPresenterProtractor); typename D::abi_guard guard(this->shim()); *inkPresenterProtractor = detach_from(this->shim().Create(*reinterpret_cast(&inkPresenter))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Length(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Length()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Length(double value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Length(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Width(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Width()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Width(double value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Width(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_AreTickMarksVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AreTickMarksVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AreTickMarksVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AreTickMarksVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCompassVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCompassVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsCompassVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsCompassVisible(value); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall Create(void* inkPresenter, void** inkPresenterRuler) noexcept final try { clear_abi(inkPresenterRuler); typename D::abi_guard guard(this->shim()); *inkPresenterRuler = detach_from(this->shim().Create(*reinterpret_cast(&inkPresenter))); return 0; } catch (...) { return to_hresult(); } }; template struct produce : produce_base { int32_t __stdcall get_Kind(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Kind()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsVisible(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsVisible()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsVisible(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsVisible(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BackgroundColor(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BackgroundColor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_BackgroundColor(struct struct_Windows_UI_Color value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().BackgroundColor(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ForegroundColor(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ForegroundColor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ForegroundColor(struct struct_Windows_UI_Color value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ForegroundColor(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Transform(winrt::Windows::Foundation::Numerics::float3x2* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Transform()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Transform(winrt::Windows::Foundation::Numerics::float3x2 value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Transform(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_BoundingRect(winrt::Windows::Foundation::Rect* boundingRect) noexcept final try { zero_abi(boundingRect); typename D::abi_guard guard(this->shim()); *boundingRect = detach_from(this->shim().BoundingRect()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetTextCandidates(void** textCandidates) noexcept final try { clear_abi(textCandidates); typename D::abi_guard guard(this->shim()); *textCandidates = detach_from>(this->shim().GetTextCandidates()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetStrokes(void** strokes) noexcept final try { clear_abi(strokes); typename D::abi_guard guard(this->shim()); *strokes = detach_from>(this->shim().GetStrokes()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Name(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Name()); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall SetDefaultRecognizer(void* recognizer) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetDefaultRecognizer(*reinterpret_cast(&recognizer)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RecognizeAsync(void* strokeCollection, int32_t recognitionTarget, void** recognitionResults) noexcept final try { clear_abi(recognitionResults); typename D::abi_guard guard(this->shim()); *recognitionResults = detach_from>>(this->shim().RecognizeAsync(*reinterpret_cast(&strokeCollection), *reinterpret_cast(&recognitionTarget))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetRecognizers(void** recognizerView) noexcept final try { clear_abi(recognizerView); typename D::abi_guard guard(this->shim()); *recognizerView = detach_from>(this->shim().GetRecognizers()); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_DrawingAttributes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DrawingAttributes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_DrawingAttributes(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().DrawingAttributes(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BoundingRect(winrt::Windows::Foundation::Rect* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BoundingRect()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Selected(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Selected()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Selected(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Selected(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Recognized(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Recognized()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetRenderingSegments(void** renderingSegments) noexcept final try { clear_abi(renderingSegments); typename D::abi_guard guard(this->shim()); *renderingSegments = detach_from>(this->shim().GetRenderingSegments()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Clone(void** clonedStroke) noexcept final try { clear_abi(clonedStroke); typename D::abi_guard guard(this->shim()); *clonedStroke = detach_from(this->shim().Clone()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PointTransform(winrt::Windows::Foundation::Numerics::float3x2* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PointTransform()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PointTransform(winrt::Windows::Foundation::Numerics::float3x2 value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PointTransform(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetInkPoints(void** inkPoints) noexcept final try { clear_abi(inkPoints); typename D::abi_guard guard(this->shim()); *inkPoints = detach_from>(this->shim().GetInkPoints()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Id(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Id()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_StrokeStartedTime(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().StrokeStartedTime()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_StrokeStartedTime(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StrokeStartedTime(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_StrokeDuration(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().StrokeDuration()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_StrokeDuration(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StrokeDuration(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PointerId(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PointerId()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall BeginStroke(void* pointerPoint) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().BeginStroke(*reinterpret_cast(&pointerPoint)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall AppendToStroke(void* pointerPoint, void** previousPointerPoint) noexcept final try { clear_abi(previousPointerPoint); typename D::abi_guard guard(this->shim()); *previousPointerPoint = detach_from(this->shim().AppendToStroke(*reinterpret_cast(&pointerPoint))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall EndStroke(void* pointerPoint, void** stroke) noexcept final try { clear_abi(stroke); typename D::abi_guard guard(this->shim()); *stroke = detach_from(this->shim().EndStroke(*reinterpret_cast(&pointerPoint))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateStroke(void* points, void** stroke) noexcept final try { clear_abi(stroke); typename D::abi_guard guard(this->shim()); *stroke = detach_from(this->shim().CreateStroke(*reinterpret_cast const*>(&points))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetDefaultDrawingAttributes(void* drawingAttributes) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetDefaultDrawingAttributes(*reinterpret_cast(&drawingAttributes)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateStrokeFromInkPoints(void* inkPoints, winrt::Windows::Foundation::Numerics::float3x2 transform, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CreateStrokeFromInkPoints(*reinterpret_cast const*>(&inkPoints), *reinterpret_cast(&transform))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateStrokeFromInkPoints(void* inkPoints, winrt::Windows::Foundation::Numerics::float3x2 transform, void* strokeStartedTime, void* strokeDuration, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CreateStrokeFromInkPoints(*reinterpret_cast const*>(&inkPoints), *reinterpret_cast(&transform), *reinterpret_cast const*>(&strokeStartedTime), *reinterpret_cast const*>(&strokeDuration))); return 0; } catch (...) { return to_hresult(); } }; #endif template struct produce : produce_base { int32_t __stdcall get_BoundingRect(winrt::Windows::Foundation::Rect* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BoundingRect()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall AddStroke(void* stroke) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AddStroke(*reinterpret_cast(&stroke)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall DeleteSelected(winrt::Windows::Foundation::Rect* invalidatedRect) noexcept final try { zero_abi(invalidatedRect); typename D::abi_guard guard(this->shim()); *invalidatedRect = detach_from(this->shim().DeleteSelected()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall MoveSelected(winrt::Windows::Foundation::Point translation, winrt::Windows::Foundation::Rect* invalidatedRectangle) noexcept final try { zero_abi(invalidatedRectangle); typename D::abi_guard guard(this->shim()); *invalidatedRectangle = detach_from(this->shim().MoveSelected(*reinterpret_cast(&translation))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SelectWithPolyLine(void* polyline, winrt::Windows::Foundation::Rect* invalidatedRectangle) noexcept final try { zero_abi(invalidatedRectangle); typename D::abi_guard guard(this->shim()); *invalidatedRectangle = detach_from(this->shim().SelectWithPolyLine(*reinterpret_cast const*>(&polyline))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SelectWithLine(winrt::Windows::Foundation::Point from, winrt::Windows::Foundation::Point to, winrt::Windows::Foundation::Rect* invalidatedRectangle) noexcept final try { zero_abi(invalidatedRectangle); typename D::abi_guard guard(this->shim()); *invalidatedRectangle = detach_from(this->shim().SelectWithLine(*reinterpret_cast(&from), *reinterpret_cast(&to))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CopySelectedToClipboard() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().CopySelectedToClipboard(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall PasteFromClipboard(winrt::Windows::Foundation::Point position, winrt::Windows::Foundation::Rect* invalidatedRectangle) noexcept final try { zero_abi(invalidatedRectangle); typename D::abi_guard guard(this->shim()); *invalidatedRectangle = detach_from(this->shim().PasteFromClipboard(*reinterpret_cast(&position))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CanPasteFromClipboard(bool* canPaste) noexcept final try { typename D::abi_guard guard(this->shim()); *canPaste = detach_from(this->shim().CanPasteFromClipboard()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall LoadAsync(void* inputStream, void** loadAction) noexcept final try { clear_abi(loadAction); typename D::abi_guard guard(this->shim()); *loadAction = detach_from>(this->shim().LoadAsync(*reinterpret_cast(&inputStream))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SaveAsync(void* outputStream, void** outputStreamOperation) noexcept final try { clear_abi(outputStreamOperation); typename D::abi_guard guard(this->shim()); *outputStreamOperation = detach_from>(this->shim().SaveAsync(*reinterpret_cast(&outputStream))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UpdateRecognitionResults(void* recognitionResults) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateRecognitionResults(*reinterpret_cast const*>(&recognitionResults)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetStrokes(void** strokeView) noexcept final try { clear_abi(strokeView); typename D::abi_guard guard(this->shim()); *strokeView = detach_from>(this->shim().GetStrokes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetRecognitionResults(void** recognitionResults) noexcept final try { clear_abi(recognitionResults); typename D::abi_guard guard(this->shim()); *recognitionResults = detach_from>(this->shim().GetRecognitionResults()); return 0; } catch (...) { return to_hresult(); } }; #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall AddStrokes(void* strokes) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AddStrokes(*reinterpret_cast const*>(&strokes)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Clear() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Clear(); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall SaveWithFormatAsync(void* outputStream, int32_t inkPersistenceFormat, void** outputStreamOperation) noexcept final try { clear_abi(outputStreamOperation); typename D::abi_guard guard(this->shim()); *outputStreamOperation = detach_from>(this->shim().SaveAsync(*reinterpret_cast(&outputStream), *reinterpret_cast(&inkPersistenceFormat))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetStrokeById(uint32_t id, void** stroke) noexcept final try { clear_abi(stroke); typename D::abi_guard guard(this->shim()); *stroke = detach_from(this->shim().GetStrokeById(id)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_StrokeStarted(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokeStarted(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokeStarted(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokeStarted(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_StrokeContinued(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokeContinued(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokeContinued(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokeContinued(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_StrokeEnded(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokeEnded(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokeEnded(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokeEnded(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_StrokeCanceled(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().StrokeCanceled(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StrokeCanceled(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StrokeCanceled(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall get_InkPresenter(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InkPresenter()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Position(winrt::Windows::Foundation::Point* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Position()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BezierControlPoint1(winrt::Windows::Foundation::Point* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BezierControlPoint1()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BezierControlPoint2(winrt::Windows::Foundation::Point* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BezierControlPoint2()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Pressure(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Pressure()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TiltX(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TiltX()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TiltY(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TiltY()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Twist(float* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Twist()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Strokes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Strokes()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Strokes(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Strokes()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall BeginDry(void** inkStrokes) noexcept final try { clear_abi(inkStrokes); typename D::abi_guard guard(this->shim()); *inkStrokes = detach_from>(this->shim().BeginDry()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall EndDry() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().EndDry(); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_PointerEntered(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerEntered(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerEntered(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerEntered(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerHovered(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerHovered(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerHovered(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerHovered(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerExited(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerExited(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerExited(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerExited(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerPressed(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerPressed(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerPressed(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerPressed(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerMoved(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerMoved(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerMoved(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerMoved(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerReleased(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerReleased(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerReleased(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerReleased(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall add_PointerLost(void* handler, winrt::event_token* cookie) noexcept final try { zero_abi(cookie); typename D::abi_guard guard(this->shim()); *cookie = detach_from(this->shim().PointerLost(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_PointerLost(winrt::event_token cookie) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().PointerLost(*reinterpret_cast(&cookie)); return 0; } int32_t __stdcall get_InkPresenter(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InkPresenter()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsHandwritingDirectlyIntoTextFieldEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsHandwritingDirectlyIntoTextFieldEnabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PenHandedness(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PenHandedness()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_HandwritingLineHeight(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().HandwritingLineHeight()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FontFamilyName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FontFamilyName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UserConsentsToHandwritingTelemetryCollection(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UserConsentsToHandwritingTelemetryCollection()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsTouchHandwritingEnabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsTouchHandwritingEnabled()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall SetPenHandedness(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetPenHandedness(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetDefault(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetDefault()); return 0; } catch (...) { return to_hresult(); } }; #endif } WINRT_EXPORT namespace winrt::Windows::UI::Input::Inking { inline InkDrawingAttributes::InkDrawingAttributes() : InkDrawingAttributes(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline auto InkDrawingAttributes::CreateForPencil() { return impl::call_factory_cast([](IInkDrawingAttributesStatics const& f) { return f.CreateForPencil(); }); } inline InkManager::InkManager() : InkManager(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline InkPoint::InkPoint(winrt::Windows::Foundation::Point const& position, float pressure) : InkPoint(impl::call_factory([&](IInkPointFactory const& f) { return f.CreateInkPoint(position, pressure); })) { } inline InkPoint::InkPoint(winrt::Windows::Foundation::Point const& position, float pressure, float tiltX, float tiltY, uint64_t timestamp) : InkPoint(impl::call_factory([&](IInkPointFactory2 const& f) { return f.CreateInkPointWithTiltAndTimestamp(position, pressure, tiltX, tiltY, timestamp); })) { } inline InkPresenterProtractor::InkPresenterProtractor(winrt::Windows::UI::Input::Inking::InkPresenter const& inkPresenter) : InkPresenterProtractor(impl::call_factory([&](IInkPresenterProtractorFactory const& f) { return f.Create(inkPresenter); })) { } inline InkPresenterRuler::InkPresenterRuler(winrt::Windows::UI::Input::Inking::InkPresenter const& inkPresenter) : InkPresenterRuler(impl::call_factory([&](IInkPresenterRulerFactory const& f) { return f.Create(inkPresenter); })) { } inline InkRecognizerContainer::InkRecognizerContainer() : InkRecognizerContainer(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline InkStrokeBuilder::InkStrokeBuilder() : InkStrokeBuilder(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline InkStrokeContainer::InkStrokeContainer() : InkStrokeContainer(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline auto PenAndInkSettings::GetDefault() { return impl::call_factory_cast([](IPenAndInkSettingsStatics const& f) { return f.GetDefault(); }); } } namespace std { #ifndef WINRT_LEAN_AND_MEAN template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; template<> struct hash : winrt::impl::hash_base {}; #endif #ifdef __cpp_lib_format #endif } #endif