// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_Management_Update_H #define WINRT_Windows_Management_Update_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.Management.h" #include "winrt/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.Management.Update.2.h" namespace winrt::impl { template auto consume_Windows_Management_Update_IPreviewBuildsManager::ArePreviewBuildsAllowed() 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_ArePreviewBuildsAllowed(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ArePreviewBuildsAllowed(&value)); } return value; } template auto consume_Windows_Management_Update_IPreviewBuildsManager::ArePreviewBuildsAllowed(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_ArePreviewBuildsAllowed(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ArePreviewBuildsAllowed(value)); } } template auto consume_Windows_Management_Update_IPreviewBuildsManager::GetCurrentState() 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->GetCurrentState(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetCurrentState(&result)); } return winrt::Windows::Management::Update::PreviewBuildsState{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IPreviewBuildsManager::SyncAsync() 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->SyncAsync(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SyncAsync(&result)); } return winrt::Windows::Foundation::IAsyncOperation{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IPreviewBuildsManagerStatics::GetDefault() 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->GetDefault(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetDefault(&value)); } return winrt::Windows::Management::Update::PreviewBuildsManager{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IPreviewBuildsManagerStatics::IsSupported() const { bool 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->IsSupported(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->IsSupported(&result)); } return result; } template auto consume_Windows_Management_Update_IPreviewBuildsState::Properties() 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_Properties(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Properties(&value)); } return winrt::Windows::Foundation::Collections::ValueSet{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::InstallationType() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateInstallationType 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_InstallationType(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InstallationType(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ProviderId() 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_ProviderId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProviderId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::UpdateId() 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_UpdateId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UpdateId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::Title() 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_Title(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Title(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::Description() 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_Description(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Description(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::MoreInfoUrl() 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_MoreInfoUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MoreInfoUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::DownloadSizeInBytes() 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_DownloadSizeInBytes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DownloadSizeInBytes(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::InstallSizeInBytes() 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_InstallSizeInBytes(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InstallSizeInBytes(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::SourceVersion() 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_SourceVersion(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SourceVersion(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::TargetVersion() 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_TargetVersion(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TargetVersion(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ProductCode() 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_ProductCode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProductCode(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::PackageFamilyName() 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_PackageFamilyName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PackageFamilyName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::Approve(winrt::Windows::Management::Update::WindowsSoftwareUpdateApprovalInfo const& approvalInfo) 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->Approve(*(void**)(&approvalInfo), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Approve(*(void**)(&approvalInfo), &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ApproveCurrentAction(bool approve) 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->ApproveCurrentAction(approve, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ApproveCurrentAction(approve, &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::CurrentAction() 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_CurrentAction(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CurrentAction(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ActionResultInfo() 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_ActionResultInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionResultInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionResultInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ApprovalInfo() 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_ApprovalInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ApprovalInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateApprovalInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ApprovedActions() 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_ApprovedActions(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ApprovedActions(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::AttentionRequiredInfo() 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_AttentionRequiredInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AttentionRequiredInfo(&value)); } return winrt::Windows::Management::Update::WindowsUpdateAttentionRequiredInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ActionProgress() 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_ActionProgress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionProgress(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionProgress{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::RestartReason() 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_RestartReason(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RestartReason(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::AppPackageInfo() 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_AppPackageInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AppPackageInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::ExecutionInfo() 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_ExecutionInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExecutionInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdate::OptionalInfo() 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_OptionalInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OptionalInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionInfo::FileName() 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_FileName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FileName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionInfo::FileArguments() 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_FileArguments(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FileArguments(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionInfo::ActionType() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateActionType 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_ActionType(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionType(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionInfoFactory::CreateInstance(param::hstring const& fileName, param::hstring const& fileArguments, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionType const& actionType) 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->CreateInstance(*(void**)(&fileName), *(void**)(&fileArguments), static_cast(actionType), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&fileName), *(void**)(&fileArguments), static_cast(actionType), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionProgress::Action() 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_Action(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Action(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionProgress::CurrentProgress() 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_CurrentProgress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CurrentProgress(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionProgress::TotalProgress() 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_TotalProgress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TotalProgress(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionResultInfo::Timestamp() const { winrt::Windows::Foundation::DateTime 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(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Timestamp(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionResultInfo::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionResultInfo::ResultCode() 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_ResultCode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ResultCode(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionResultInfo::ExtendedError() 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_ExtendedError(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateActionResultInfo::Action() 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_Action(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Action(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateAppPackageInfo::PackageFamilyName() 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_PackageFamilyName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PackageFamilyName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateAppPackageInfo::PackageArchitecture() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateArchitecture 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_PackageArchitecture(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PackageArchitecture(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateAppPackageInfo::InstallUri() 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_InstallUri(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InstallUri(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateAppPackageInfoFactory::CreateInstance(param::hstring const& packageFamilyName, winrt::Windows::Management::Update::WindowsSoftwareUpdateArchitecture const& packageArchitecture, winrt::Windows::Foundation::Uri const& installUri) 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->CreateInstance(*(void**)(&packageFamilyName), static_cast(packageArchitecture), *(void**)(&installUri), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&packageFamilyName), static_cast(packageArchitecture), *(void**)(&installUri), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateApprovalInfo::UserInitiated() 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_UserInitiated(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UserInitiated(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateApprovalInfo::AppClosure() 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_AppClosure(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AppClosure(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateApprovalInfo::MeteredNetwork() 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_MeteredNetwork(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MeteredNetwork(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateApprovalInfo::Seeker() 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_Seeker(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Seeker(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateApprovalInfoFactory::CreateInstance(bool userInitiated, bool appClosure, bool meteredNetwork, bool seeker) 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->CreateInstance(userInitiated, appClosure, meteredNetwork, seeker, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(userInitiated, appClosure, meteredNetwork, seeker, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateApprovalInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfo::DownloadInfo() 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_DownloadInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DownloadInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfo::InstallInfo() 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_InstallInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InstallInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfo::DeployInfo() 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_DeployInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DeployInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfo::OptionalActionInfo() 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_OptionalActionInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OptionalActionInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfoFactory::CreateInstance(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& downloadInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& installInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo const& actions) 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->CreateInstance(*(void**)(&downloadInfo), *(void**)(&installInfo), *(void**)(&actions), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&downloadInfo), *(void**)(&installInfo), *(void**)(&actions), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateExecutionInfoFactory::CreateInstance2(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& deployInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo const& actions) 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->CreateInstance2(*(void**)(&deployInfo), *(void**)(&actions), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance2(*(void**)(&deployInfo), *(void**)(&actions), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateFactory::CreateInstance(param::hstring const& providerId, winrt::Windows::Management::Update::WindowsSoftwareUpdateInstallationType const& installationType, param::hstring const& updateId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& sourceVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& targetVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo const& appPackageInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo const& executionInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo const& optionalInfo) 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->CreateInstance(*(void**)(&providerId), static_cast(installationType), *(void**)(&updateId), *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *(void**)(&sourceVersion), *(void**)(&targetVersion), *(void**)(&appPackageInfo), *(void**)(&executionInfo), *(void**)(&optionalInfo), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&providerId), static_cast(installationType), *(void**)(&updateId), *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *(void**)(&sourceVersion), *(void**)(&targetVersion), *(void**)(&appPackageInfo), *(void**)(&executionInfo), *(void**)(&optionalInfo), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdate{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateFactory::CreateInstance2(param::hstring const& providerId, winrt::Windows::Management::Update::WindowsSoftwareUpdateInstallationType const& installationType, param::hstring const& updateId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, winrt::Windows::Foundation::IReference const& productCode, param::hstring const& packageFamilyName, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& sourceVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& targetVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo const& appPackageInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo const& executionInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo const& optionalInfo) 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->CreateInstance2(*(void**)(&providerId), static_cast(installationType), *(void**)(&updateId), *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *(void**)(&productCode), *(void**)(&packageFamilyName), *(void**)(&sourceVersion), *(void**)(&targetVersion), *(void**)(&appPackageInfo), *(void**)(&executionInfo), *(void**)(&optionalInfo), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance2(*(void**)(&providerId), static_cast(installationType), *(void**)(&updateId), *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *(void**)(&productCode), *(void**)(&packageFamilyName), *(void**)(&sourceVersion), *(void**)(&targetVersion), *(void**)(&appPackageInfo), *(void**)(&executionInfo), *(void**)(&optionalInfo), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdate{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateLocalizationInfo::LanguageId() 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_LanguageId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LanguageId(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateLocalizationInfo::Title() 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_Title(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Title(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateLocalizationInfo::Description() 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_Description(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Description(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateLocalizationInfo::MoreInfoUrl() 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_MoreInfoUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MoreInfoUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateLocalizationInfoFactory::CreateInstance(uint32_t languageId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl) 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->CreateInstance(languageId, *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(languageId, *(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateLocalizationInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalActionInfo::CloseAndDeployInfo() 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_CloseAndDeployInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CloseAndDeployInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalActionInfo::CloseAndInstallInfo() 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_CloseAndInstallInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CloseAndInstallInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalActionInfo::CloseAndRestartInfo() 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_CloseAndRestartInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CloseAndRestartInfo(&value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalActionInfoFactory::CreateInstance(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndDeployInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndInstallInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndRestartInfo) 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->CreateInstance(*(void**)(&closeAndDeployInfo), *(void**)(&closeAndInstallInfo), *(void**)(&closeAndRestartInfo), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&closeAndDeployInfo), *(void**)(&closeAndInstallInfo), *(void**)(&closeAndRestartInfo), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalInfo::LocalizationInfo() 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_LocalizationInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LocalizationInfo(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalInfo::ComplianceDeadlineInDays() 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_ComplianceDeadlineInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceDeadlineInDays(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalInfo::ComplianceGracePeriodInDays() 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_ComplianceGracePeriodInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceGracePeriodInDays(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalInfoFactory::CreateInstance(winrt::Windows::Foundation::IReference const& complianceDeadlineInDays, winrt::Windows::Foundation::IReference const& complianceGracePeriodInDays) 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->CreateInstance(*(void**)(&complianceDeadlineInDays), *(void**)(&complianceGracePeriodInDays), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&complianceDeadlineInDays), *(void**)(&complianceGracePeriodInDays), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateOptionalInfoFactory::CreateInstance2(param::iterable const& localizationInfo, winrt::Windows::Foundation::IReference const& complianceDeadlineInDays, winrt::Windows::Foundation::IReference const& complianceGracePeriodInDays) 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->CreateInstance2(*(void**)(&localizationInfo), *(void**)(&complianceDeadlineInDays), *(void**)(&complianceGracePeriodInDays), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance2(*(void**)(&localizationInfo), *(void**)(&complianceDeadlineInDays), *(void**)(&complianceGracePeriodInDays), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Register() 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->Register(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Register(&result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Unregister() 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->Unregister(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Unregister(&result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Validate() 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->Validate(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Validate(&result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Id() 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_Id(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Id(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Version() 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_Version(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Version(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::FolderPath() 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_FolderPath(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FolderPath(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::CatalogFile() 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_CatalogFile(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CatalogFile(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::ScanFileName() 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_ScanFileName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ScanFileName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::ScanFileArguments() 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_ScanFileArguments(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ScanFileArguments(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Type() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderType 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_Type(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Type(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::PayloadFiles() 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_PayloadFiles(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PayloadFiles(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::TrustState() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderTrustState 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_TrustState(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TrustState(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::RegistrationType() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderRegistrationType 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_RegistrationType(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RegistrationType(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::Properties() 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_Properties(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Properties(&value)); } return winrt::Windows::Foundation::Collections::PropertySet{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProvider::GetPropertyValue(param::hstring const& name) 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->GetPropertyValue(*(void**)(&name), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetPropertyValue(*(void**)(&name), &result)); } return winrt::Windows::Foundation::IInspectable{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderActionResult::Result() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateActionResult 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_Result(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Result(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderActionResult::RestartReason() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateRestartReason 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_RestartReason(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RestartReason(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderActionResult::ResultCode() 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_ResultCode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ResultCode(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderActionResult::ExtendedError() 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_ExtendedError(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderActionResultFactory::CreateInstance(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionResult const& actionResult, winrt::Windows::Management::Update::WindowsSoftwareUpdateRestartReason const& restartReason, uint32_t resultCode, uint64_t extendedError) 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->CreateInstance(static_cast(actionResult), static_cast(restartReason), resultCode, extendedError, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(static_cast(actionResult), static_cast(restartReason), resultCode, extendedError, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderActionResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderFactory::CreateInstance(param::hstring const& folderPath) 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->CreateInstance(*(void**)(&folderPath), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&folderPath), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateProvider{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderPayloadFileInfo::Filename() 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_Filename(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Filename(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderPayloadFileInfo::FileHash() 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_FileHash(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_FileHash(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderPayloadFileInfo::CatalogFile() 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_CatalogFile(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CatalogFile(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderPayloadFileInfo::TrustState() const { winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderTrustState 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_TrustState(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TrustState(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::CancelRequested(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_CancelRequested(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_CancelRequested(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::CancelRequested(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, CancelRequested(handler)); } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::CancelRequested(winrt::event_token const& token) 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_CancelRequested(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_CancelRequested(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::SetScanResult(bool succeeded, uint32_t resultCode, uint64_t extendedError, param::iterable const& updates) 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->SetScanResult(succeeded, resultCode, extendedError, *(void**)(&updates), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetScanResult(succeeded, resultCode, extendedError, *(void**)(&updates), &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::SetActionProgress(uint64_t current, uint64_t total) 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->SetActionProgress(current, total, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetActionProgress(current, total, &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatus::SetActionResult(winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderActionResult const& actionResult) 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->SetActionResult(*(void**)(&actionResult), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->SetActionResult(*(void**)(&actionResult), &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateProviderStatusFactory::CreateInstance(param::hstring const& providerId) 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->CreateInstance(*(void**)(&providerId), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&providerId), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateProviderStatus{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResult::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResult::CancelRequested() 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_CancelRequested(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CancelRequested(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResult::ResultCode() 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_ResultCode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ResultCode(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResult::ExtendedError() 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_ExtendedError(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResultFactory::CreateInstance(bool succeeded, uint32_t resultCode) 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->CreateInstance(succeeded, resultCode, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(succeeded, resultCode, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResultFactory::CreateInstance2(bool succeeded, uint32_t resultCode, uint64_t extendedError) 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->CreateInstance2(succeeded, resultCode, extendedError, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance2(succeeded, resultCode, extendedError, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateResultFactory::CreateInstance3(bool succeeded, bool cancelRequested, uint32_t resultCode, uint64_t extendedError) 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->CreateInstance3(succeeded, cancelRequested, resultCode, extendedError, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance3(succeeded, cancelRequested, resultCode, extendedError, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResult::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResult::ResultCode() 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_ResultCode(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ResultCode(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResult::ExtendedError() 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_ExtendedError(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResult::Updates() 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_Updates(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Updates(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResultFactory::CreateInstance(bool succeeded, uint32_t resultCode, param::iterable const& updates) 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->CreateInstance(succeeded, resultCode, *(void**)(&updates), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(succeeded, resultCode, *(void**)(&updates), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateScanResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateScanResultFactory::CreateInstance2(bool succeeded, uint32_t resultCode, uint64_t extendedError, param::iterable const& updates) 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->CreateInstance2(succeeded, resultCode, extendedError, *(void**)(&updates), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance2(succeeded, resultCode, extendedError, *(void**)(&updates), &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateScanResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateVersion::Major() 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_Major(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Major(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateVersion::Minor() 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_Minor(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Minor(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateVersion::RevisionMajor() 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_RevisionMajor(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RevisionMajor(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateVersion::RevisionMinor() 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_RevisionMinor(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RevisionMinor(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsSoftwareUpdateVersionFactory::CreateInstance(uint32_t major, uint32_t minor, uint32_t revisionMajor, uint32_t revisionMinor) 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->CreateInstance(major, minor, revisionMajor, revisionMinor, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(major, minor, revisionMajor, revisionMinor, &value)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::ProviderId() 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_ProviderId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProviderId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::UpdateId() 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_UpdateId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UpdateId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::Title() 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_Title(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Title(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::Description() 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_Description(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Description(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsFeatureUpdate() 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_IsFeatureUpdate(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsFeatureUpdate(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsMinorImpact() 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_IsMinorImpact(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsMinorImpact(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsSecurity() 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_IsSecurity(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSecurity(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsCritical() 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_IsCritical(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsCritical(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsForOS() 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_IsForOS(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsForOS(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsDriver() 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_IsDriver(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsDriver(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsMandatory() 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_IsMandatory(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsMandatory(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsUrgent() 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_IsUrgent(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsUrgent(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsSeeker() 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_IsSeeker(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSeeker(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::MoreInfoUrl() 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_MoreInfoUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MoreInfoUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::SupportUrl() 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_SupportUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SupportUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::IsEulaAccepted() 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_IsEulaAccepted(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsEulaAccepted(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdate::EulaText() 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_EulaText(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_EulaText(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::Deadline() 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_Deadline(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Deadline(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::AttentionRequiredInfo() 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_AttentionRequiredInfo(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AttentionRequiredInfo(&value)); } return winrt::Windows::Management::Update::WindowsUpdateAttentionRequiredInfo{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::ActionResult() 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_ActionResult(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionResult(&value)); } return winrt::Windows::Management::Update::WindowsUpdateActionResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::CurrentAction() 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_CurrentAction(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_CurrentAction(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::ActionProgress() 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_ActionProgress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionProgress(&value)); } return winrt::Windows::Management::Update::WindowsUpdateActionProgress{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::GetPropertyValue(param::hstring const& propertyName) 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->GetPropertyValue(*(void**)(&propertyName), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetPropertyValue(*(void**)(&propertyName), &result)); } return winrt::Windows::Foundation::IInspectable{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdate::AcceptEula() 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->AcceptEula()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->AcceptEula()); } } template auto consume_Windows_Management_Update_IWindowsUpdateActionCompletedEventArgs::Update() 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_Update(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Update(&value)); } return winrt::Windows::Management::Update::WindowsUpdate{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateActionCompletedEventArgs::Action() 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_Action(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Action(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateActionCompletedEventArgs::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionCompletedEventArgs::ExtendedError() const { winrt::hresult 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_ExtendedError(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionProgress::Action() 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_Action(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Action(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateActionProgress::Progress() 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_Progress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Progress(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionResult::Timestamp() const { winrt::Windows::Foundation::DateTime 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(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Timestamp(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionResult::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionResult::ExtendedError() const { winrt::hresult 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_ExtendedError(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateActionResult::Action() 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_Action(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Action(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::StartAdministratorScan() 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->StartAdministratorScan()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->StartAdministratorScan()); } } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::ApproveWindowsUpdateAction(param::hstring const& updateId, param::hstring const& action) 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->ApproveWindowsUpdateAction(*(void**)(&updateId), *(void**)(&action))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ApproveWindowsUpdateAction(*(void**)(&updateId), *(void**)(&action))); } } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::RevokeWindowsUpdateActionApproval(param::hstring const& updateId, param::hstring const& action) 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->RevokeWindowsUpdateActionApproval(*(void**)(&updateId), *(void**)(&action))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RevokeWindowsUpdateActionApproval(*(void**)(&updateId), *(void**)(&action))); } } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::ApproveWindowsUpdate(param::hstring const& updateId, winrt::Windows::Management::Update::WindowsUpdateApprovalData const& approvalData) 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->ApproveWindowsUpdate(*(void**)(&updateId), *(void**)(&approvalData))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ApproveWindowsUpdate(*(void**)(&updateId), *(void**)(&approvalData))); } } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::RevokeWindowsUpdateApproval(param::hstring const& updateId) 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->RevokeWindowsUpdateApproval(*(void**)(&updateId))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RevokeWindowsUpdateApproval(*(void**)(&updateId))); } } template auto consume_Windows_Management_Update_IWindowsUpdateAdministrator::GetUpdates() 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->GetUpdates(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetUpdates(&result)); } return winrt::Windows::Foundation::Collections::IVectorView{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::GetRegisteredAdministrator(param::hstring const& organizationName) 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->GetRegisteredAdministrator(*(void**)(&organizationName), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRegisteredAdministrator(*(void**)(&organizationName), &result)); } return winrt::Windows::Management::Update::WindowsUpdateGetAdministratorResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::RegisterForAdministration(param::hstring const& organizationName, winrt::Windows::Management::Update::WindowsUpdateAdministratorOptions const& options) const { winrt::Windows::Management::Update::WindowsUpdateAdministratorStatus 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->RegisterForAdministration(*(void**)(&organizationName), static_cast(options), reinterpret_cast(&result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RegisterForAdministration(*(void**)(&organizationName), static_cast(options), reinterpret_cast(&result))); } return result; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::UnregisterForAdministration(param::hstring const& organizationName) const { winrt::Windows::Management::Update::WindowsUpdateAdministratorStatus 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->UnregisterForAdministration(*(void**)(&organizationName), reinterpret_cast(&result))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->UnregisterForAdministration(*(void**)(&organizationName), reinterpret_cast(&result))); } return result; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::GetRegisteredAdministratorName() 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->GetRegisteredAdministratorName(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRegisteredAdministratorName(&result)); } return hstring{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::RequestRestart(winrt::Windows::Management::Update::WindowsUpdateRestartRequestOptions const& restartOptions) 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->RequestRestart(*(void**)(&restartOptions), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->RequestRestart(*(void**)(&restartOptions), &result)); } return hstring{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAdministratorStatics::CancelRestartRequest(param::hstring const& requestRestartToken) 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->CancelRestartRequest(*(void**)(&requestRestartToken))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CancelRestartRequest(*(void**)(&requestRestartToken))); } } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::Seeker() 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_Seeker(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Seeker(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::Seeker(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_Seeker(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Seeker(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::AllowDownloadOnMetered() 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_AllowDownloadOnMetered(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AllowDownloadOnMetered(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::AllowDownloadOnMetered(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_AllowDownloadOnMetered(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AllowDownloadOnMetered(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::ComplianceDeadlineInDays() 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_ComplianceDeadlineInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceDeadlineInDays(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::ComplianceDeadlineInDays(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_ComplianceDeadlineInDays(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ComplianceDeadlineInDays(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::ComplianceGracePeriodInDays() 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_ComplianceGracePeriodInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceGracePeriodInDays(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::ComplianceGracePeriodInDays(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_ComplianceGracePeriodInDays(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ComplianceGracePeriodInDays(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::OptOutOfAutoReboot() 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_OptOutOfAutoReboot(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OptOutOfAutoReboot(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateApprovalData::OptOutOfAutoReboot(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_OptOutOfAutoReboot(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_OptOutOfAutoReboot(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateAttentionRequiredInfo::Reason() const { winrt::Windows::Management::Update::WindowsUpdateAttentionRequiredReason 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_Reason(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Reason(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateAttentionRequiredInfo::Timestamp() 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_Timestamp(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Timestamp(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAttentionRequiredReasonChangedEventArgs::Update() 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_Update(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Update(&value)); } return winrt::Windows::Management::Update::WindowsUpdate{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateAttentionRequiredReasonChangedEventArgs::Reason() const { winrt::Windows::Management::Update::WindowsUpdateAttentionRequiredReason 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_Reason(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Reason(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateGetAdministratorResult::Administrator() 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_Administrator(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Administrator(&value)); } return winrt::Windows::Management::Update::WindowsUpdateAdministrator{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateGetAdministratorResult::Status() const { winrt::Windows::Management::Update::WindowsUpdateAdministratorStatus 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_Status(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Status(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::ProviderId() 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_ProviderId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProviderId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::UpdateId() 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_UpdateId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_UpdateId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::Timestamp() const { winrt::Windows::Foundation::DateTime 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(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Timestamp(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::Title() 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_Title(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Title(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::Description() 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_Description(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Description(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::MoreInfoUrl() 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_MoreInfoUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MoreInfoUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::Category() 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_Category(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Category(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateItem::Operation() 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_Operation(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Operation(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanningStateChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_ScanningStateChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_ScanningStateChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanningStateChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, ScanningStateChanged(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanningStateChanged(winrt::event_token const& token) 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_ScanningStateChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_ScanningStateChanged(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::WorkingStateChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_WorkingStateChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_WorkingStateChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::WorkingStateChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, WorkingStateChanged(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::WorkingStateChanged(winrt::event_token const& token) 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_WorkingStateChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_WorkingStateChanged(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ProgressChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_ProgressChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_ProgressChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ProgressChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, ProgressChanged(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ProgressChanged(winrt::event_token const& token) 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_ProgressChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_ProgressChanged(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::AttentionRequiredReasonChanged(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_AttentionRequiredReasonChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_AttentionRequiredReasonChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::AttentionRequiredReasonChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, AttentionRequiredReasonChanged(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::AttentionRequiredReasonChanged(winrt::event_token const& token) 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_AttentionRequiredReasonChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_AttentionRequiredReasonChanged(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ActionCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_ActionCompleted(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_ActionCompleted(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ActionCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, ActionCompleted(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ActionCompleted(winrt::event_token const& token) 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_ActionCompleted(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_ActionCompleted(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; 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_ScanCompleted(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_ScanCompleted(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, ScanCompleted(handler)); } template auto consume_Windows_Management_Update_IWindowsUpdateManager::ScanCompleted(winrt::event_token const& token) 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_ScanCompleted(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_ScanCompleted(impl::bind_in(token)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager::IsScanning() 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_IsScanning(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsScanning(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::IsWorking() 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_IsWorking(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsWorking(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::LastSuccessfulScanTimestamp() 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_LastSuccessfulScanTimestamp(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LastSuccessfulScanTimestamp(&value)); } return winrt::Windows::Foundation::IReference{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::GetApplicableUpdates() 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->GetApplicableUpdates(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetApplicableUpdates(&result)); } return winrt::Windows::Foundation::Collections::IVectorView{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::GetMostRecentCompletedUpdates(int32_t count) 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->GetMostRecentCompletedUpdates(count, &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetMostRecentCompletedUpdates(count, &result)); } return winrt::Windows::Foundation::Collections::IVectorView{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::GetMostRecentCompletedUpdatesAsync(int32_t count) const { void* operation{}; 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->GetMostRecentCompletedUpdatesAsync(count, &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetMostRecentCompletedUpdatesAsync(count, &operation)); } return winrt::Windows::Foundation::IAsyncOperation>{ operation, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager::StartScan(bool userInitiated) 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->StartScan(userInitiated)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->StartScan(userInitiated)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManager2::GetProvider(param::hstring const& id) 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->GetProvider(*(void**)(&id), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetProvider(*(void**)(&id), &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateProvider{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager2::ProviderIds() const { uint32_t value_impl_size{}; 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_ProviderIds(&value_impl_size, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProviderIds(&value_impl_size, &value)); } return com_array{ value, value_impl_size, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager2::GetApplicableSoftwareUpdates() 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->GetApplicableSoftwareUpdates(&result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetApplicableSoftwareUpdates(&result)); } return winrt::Windows::Foundation::Collections::IVectorView{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManager2::PerformScan(winrt::Windows::Management::Update::WindowsUpdateManagerScanOptions const& options) 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->PerformScan(*(void**)(&options), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->PerformScan(*(void**)(&options), &result)); } return winrt::Windows::Management::Update::WindowsSoftwareUpdateScanResult{ result, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerFactory::CreateInstance(param::hstring const& clientId) 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->CreateInstance(*(void**)(&clientId), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&clientId), &value)); } return winrt::Windows::Management::Update::WindowsUpdateManager{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerFactory2::CreateInstance(param::hstring const& clientId, array_view providerIdFilter) 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->CreateInstance(*(void**)(&clientId), providerIdFilter.size(), get_abi(providerIdFilter), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&clientId), providerIdFilter.size(), get_abi(providerIdFilter), &value)); } return winrt::Windows::Management::Update::WindowsUpdateManager{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::IsUserInitiated() 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_IsUserInitiated(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsUserInitiated(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::IsUserInitiated(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_IsUserInitiated(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsUserInitiated(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::AllowBypassThrottling() 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_AllowBypassThrottling(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AllowBypassThrottling(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::AllowBypassThrottling(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_AllowBypassThrottling(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_AllowBypassThrottling(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::PerformUpdateActions() 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_PerformUpdateActions(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PerformUpdateActions(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptions::PerformUpdateActions(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_PerformUpdateActions(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PerformUpdateActions(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateManagerScanOptionsFactory::CreateInstance(bool isUserInitiated) 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->CreateInstance(isUserInitiated, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(isUserInitiated, &value)); } return winrt::Windows::Management::Update::WindowsUpdateManagerScanOptions{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateProgressChangedEventArgs::Update() 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_Update(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Update(&value)); } return winrt::Windows::Management::Update::WindowsUpdate{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateProgressChangedEventArgs::ActionProgress() 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_ActionProgress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ActionProgress(&value)); } return winrt::Windows::Management::Update::WindowsUpdateActionProgress{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::Title() 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_Title(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Title(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::Title(param::hstring 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_Title(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Title(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::Description() 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_Description(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Description(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::Description(param::hstring 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_Description(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_Description(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::MoreInfoUrl() 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_MoreInfoUrl(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MoreInfoUrl(&value)); } return winrt::Windows::Foundation::Uri{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::MoreInfoUrl(winrt::Windows::Foundation::Uri 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_MoreInfoUrl(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_MoreInfoUrl(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::ComplianceDeadlineInDays() const { int32_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_ComplianceDeadlineInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceDeadlineInDays(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::ComplianceDeadlineInDays(int32_t 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_ComplianceDeadlineInDays(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ComplianceDeadlineInDays(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::ComplianceGracePeriodInDays() const { int32_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_ComplianceGracePeriodInDays(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ComplianceGracePeriodInDays(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::ComplianceGracePeriodInDays(int32_t 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_ComplianceGracePeriodInDays(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ComplianceGracePeriodInDays(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::OrganizationName() 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_OrganizationName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OrganizationName(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::OrganizationName(param::hstring 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_OrganizationName(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_OrganizationName(*(void**)(&value))); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::OptOutOfAutoReboot() 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_OptOutOfAutoReboot(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OptOutOfAutoReboot(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptions::OptOutOfAutoReboot(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_OptOutOfAutoReboot(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_OptOutOfAutoReboot(value)); } } template auto consume_Windows_Management_Update_IWindowsUpdateRestartRequestOptionsFactory::CreateInstance(param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, int32_t complianceDeadlineInDays, int32_t complianceGracePeriodInDays) 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->CreateInstance(*(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), complianceDeadlineInDays, complianceGracePeriodInDays, &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateInstance(*(void**)(&title), *(void**)(&description), *(void**)(&moreInfoUrl), complianceDeadlineInDays, complianceGracePeriodInDays, &value)); } return winrt::Windows::Management::Update::WindowsUpdateRestartRequestOptions{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateScanCompletedEventArgs::ProviderId() 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_ProviderId(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ProviderId(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Management_Update_IWindowsUpdateScanCompletedEventArgs::Succeeded() 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_Succeeded(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Succeeded(&value)); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateScanCompletedEventArgs::ExtendedError() const { winrt::hresult 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_ExtendedError(put_abi(value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ExtendedError(put_abi(value))); } return value; } template auto consume_Windows_Management_Update_IWindowsUpdateScanCompletedEventArgs::Updates() 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_Updates(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Updates(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ArePreviewBuildsAllowed(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ArePreviewBuildsAllowed()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ArePreviewBuildsAllowed(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ArePreviewBuildsAllowed(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetCurrentState(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetCurrentState()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SyncAsync(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>(this->shim().SyncAsync()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetDefault(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetDefault()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall IsSupported(bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().IsSupported()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Properties(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Properties()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_InstallationType(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InstallationType()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ProviderId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ProviderId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UpdateId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UpdateId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Title(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Title()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Description(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Description()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MoreInfoUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MoreInfoUrl()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DownloadSizeInBytes(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DownloadSizeInBytes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InstallSizeInBytes(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InstallSizeInBytes()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SourceVersion(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SourceVersion()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TargetVersion(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TargetVersion()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ProductCode(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ProductCode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PackageFamilyName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PackageFamilyName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Approve(void* approvalInfo, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Approve(*reinterpret_cast(&approvalInfo))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ApproveCurrentAction(bool approve, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ApproveCurrentAction(approve)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentAction(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentAction()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionResultInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionResultInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ApprovalInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ApprovalInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ApprovedActions(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ApprovedActions()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AttentionRequiredInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AttentionRequiredInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionProgress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionProgress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RestartReason(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().RestartReason()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AppPackageInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AppPackageInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExecutionInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExecutionInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OptionalInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OptionalInfo()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_FileName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FileName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FileArguments(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FileArguments()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionType(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionType()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* fileName, void* fileArguments, int32_t actionType, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&fileName), *reinterpret_cast(&fileArguments), *reinterpret_cast(&actionType))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Action(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Action()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentProgress(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentProgress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TotalProgress(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TotalProgress()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Timestamp(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Timestamp()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ResultCode(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ResultCode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Action(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Action()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_PackageFamilyName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PackageFamilyName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PackageArchitecture(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PackageArchitecture()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InstallUri(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InstallUri()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* packageFamilyName, int32_t packageArchitecture, void* installUri, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&packageFamilyName), *reinterpret_cast(&packageArchitecture), *reinterpret_cast(&installUri))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_UserInitiated(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UserInitiated()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AppClosure(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AppClosure()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MeteredNetwork(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MeteredNetwork()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Seeker(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Seeker()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(bool userInitiated, bool appClosure, bool meteredNetwork, bool seeker, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(userInitiated, appClosure, meteredNetwork, seeker)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_DownloadInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DownloadInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InstallInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InstallInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DeployInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DeployInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OptionalActionInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OptionalActionInfo()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* downloadInfo, void* installInfo, void* actions, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&downloadInfo), *reinterpret_cast(&installInfo), *reinterpret_cast(&actions))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance2(void* deployInfo, void* actions, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance2(*reinterpret_cast(&deployInfo), *reinterpret_cast(&actions))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* providerId, int32_t installationType, void* updateId, void* title, void* description, void* moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, void* sourceVersion, void* targetVersion, void* appPackageInfo, void* executionInfo, void* optionalInfo, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&providerId), *reinterpret_cast(&installationType), *reinterpret_cast(&updateId), *reinterpret_cast(&title), *reinterpret_cast(&description), *reinterpret_cast(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *reinterpret_cast(&sourceVersion), *reinterpret_cast(&targetVersion), *reinterpret_cast(&appPackageInfo), *reinterpret_cast(&executionInfo), *reinterpret_cast(&optionalInfo))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance2(void* providerId, int32_t installationType, void* updateId, void* title, void* description, void* moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, void* productCode, void* packageFamilyName, void* sourceVersion, void* targetVersion, void* appPackageInfo, void* executionInfo, void* optionalInfo, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance2(*reinterpret_cast(&providerId), *reinterpret_cast(&installationType), *reinterpret_cast(&updateId), *reinterpret_cast(&title), *reinterpret_cast(&description), *reinterpret_cast(&moreInfoUrl), downloadSizeInBytes, installSizeInBytes, *reinterpret_cast const*>(&productCode), *reinterpret_cast(&packageFamilyName), *reinterpret_cast(&sourceVersion), *reinterpret_cast(&targetVersion), *reinterpret_cast(&appPackageInfo), *reinterpret_cast(&executionInfo), *reinterpret_cast(&optionalInfo))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_LanguageId(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LanguageId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Title(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Title()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Description(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Description()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MoreInfoUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MoreInfoUrl()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(uint32_t languageId, void* title, void* description, void* moreInfoUrl, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(languageId, *reinterpret_cast(&title), *reinterpret_cast(&description), *reinterpret_cast(&moreInfoUrl))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_CloseAndDeployInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CloseAndDeployInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CloseAndInstallInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CloseAndInstallInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CloseAndRestartInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CloseAndRestartInfo()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* closeAndDeployInfo, void* closeAndInstallInfo, void* closeAndRestartInfo, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&closeAndDeployInfo), *reinterpret_cast(&closeAndInstallInfo), *reinterpret_cast(&closeAndRestartInfo))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_LocalizationInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().LocalizationInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceDeadlineInDays(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ComplianceDeadlineInDays()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceGracePeriodInDays(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ComplianceGracePeriodInDays()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* complianceDeadlineInDays, void* complianceGracePeriodInDays, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast const*>(&complianceDeadlineInDays), *reinterpret_cast const*>(&complianceGracePeriodInDays))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance2(void* localizationInfo, void* complianceDeadlineInDays, void* complianceGracePeriodInDays, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance2(*reinterpret_cast const*>(&localizationInfo), *reinterpret_cast const*>(&complianceDeadlineInDays), *reinterpret_cast const*>(&complianceGracePeriodInDays))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall Register(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Register()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Unregister(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Unregister()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Validate(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Validate()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Id(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Id()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Version(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Version()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FolderPath(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FolderPath()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CatalogFile(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CatalogFile()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ScanFileName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ScanFileName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ScanFileArguments(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ScanFileArguments()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Type(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Type()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PayloadFiles(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().PayloadFiles()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TrustState(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TrustState()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RegistrationType(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RegistrationType()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Properties(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Properties()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetPropertyValue(void* name, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetPropertyValue(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Result(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Result()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RestartReason(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RestartReason()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ResultCode(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ResultCode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(int32_t actionResult, int32_t restartReason, uint32_t resultCode, uint64_t extendedError, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&actionResult), *reinterpret_cast(&restartReason), resultCode, extendedError)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* folderPath, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&folderPath))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Filename(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Filename()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_FileHash(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().FileHash()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CatalogFile(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CatalogFile()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TrustState(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TrustState()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_CancelRequested(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().CancelRequested(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_CancelRequested(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().CancelRequested(*reinterpret_cast(&token)); return 0; } int32_t __stdcall SetScanResult(bool succeeded, uint32_t resultCode, uint64_t extendedError, void* updates, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().SetScanResult(succeeded, resultCode, extendedError, *reinterpret_cast const*>(&updates))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetActionProgress(uint64_t current, uint64_t total, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().SetActionProgress(current, total)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall SetActionResult(void* actionResult, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().SetActionResult(*reinterpret_cast(&actionResult))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* providerId, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&providerId))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CancelRequested(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CancelRequested()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ResultCode(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ResultCode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(bool succeeded, uint32_t resultCode, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(succeeded, resultCode)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance2(bool succeeded, uint32_t resultCode, uint64_t extendedError, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance2(succeeded, resultCode, extendedError)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance3(bool succeeded, bool cancelRequested, uint32_t resultCode, uint64_t extendedError, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance3(succeeded, cancelRequested, resultCode, extendedError)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ResultCode(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ResultCode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Updates(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Updates()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(bool succeeded, uint32_t resultCode, void* updates, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(succeeded, resultCode, *reinterpret_cast const*>(&updates))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateInstance2(bool succeeded, uint32_t resultCode, uint64_t extendedError, void* updates, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance2(succeeded, resultCode, extendedError, *reinterpret_cast const*>(&updates))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Major(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Major()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Minor(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Minor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RevisionMajor(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RevisionMajor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RevisionMinor(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RevisionMinor()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(uint32_t major, uint32_t minor, uint32_t revisionMajor, uint32_t revisionMinor, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(major, minor, revisionMajor, revisionMinor)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ProviderId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ProviderId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UpdateId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UpdateId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Title(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Title()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Description(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Description()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsFeatureUpdate(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsFeatureUpdate()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsMinorImpact(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsMinorImpact()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSecurity(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsSecurity()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsCritical(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsCritical()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsForOS(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsForOS()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsDriver(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsDriver()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsMandatory(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsMandatory()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsUrgent(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsUrgent()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSeeker(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsSeeker()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MoreInfoUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MoreInfoUrl()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SupportUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SupportUrl()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsEulaAccepted(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsEulaAccepted()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_EulaText(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().EulaText()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Deadline(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Deadline()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AttentionRequiredInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AttentionRequiredInfo()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionResult(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionResult()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentAction(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentAction()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionProgress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionProgress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetPropertyValue(void* propertyName, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetPropertyValue(*reinterpret_cast(&propertyName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall AcceptEula() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AcceptEula(); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Update(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Update()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Action(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Action()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(winrt::hresult* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Action(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Action()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Progress(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Progress()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Timestamp(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Timestamp()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(winrt::hresult* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Action(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Action()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall StartAdministratorScan() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StartAdministratorScan(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ApproveWindowsUpdateAction(void* updateId, void* action) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ApproveWindowsUpdateAction(*reinterpret_cast(&updateId), *reinterpret_cast(&action)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RevokeWindowsUpdateActionApproval(void* updateId, void* action) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RevokeWindowsUpdateActionApproval(*reinterpret_cast(&updateId), *reinterpret_cast(&action)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ApproveWindowsUpdate(void* updateId, void* approvalData) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ApproveWindowsUpdate(*reinterpret_cast(&updateId), *reinterpret_cast(&approvalData)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RevokeWindowsUpdateApproval(void* updateId) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RevokeWindowsUpdateApproval(*reinterpret_cast(&updateId)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetUpdates(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>(this->shim().GetUpdates()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetRegisteredAdministrator(void* organizationName, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetRegisteredAdministrator(*reinterpret_cast(&organizationName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RegisterForAdministration(void* organizationName, uint32_t options, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().RegisterForAdministration(*reinterpret_cast(&organizationName), *reinterpret_cast(&options))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UnregisterForAdministration(void* organizationName, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().UnregisterForAdministration(*reinterpret_cast(&organizationName))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetRegisteredAdministratorName(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetRegisteredAdministratorName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RequestRestart(void* restartOptions, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().RequestRestart(*reinterpret_cast(&restartOptions))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CancelRestartRequest(void* requestRestartToken) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().CancelRestartRequest(*reinterpret_cast(&requestRestartToken)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Seeker(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Seeker()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Seeker(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Seeker(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AllowDownloadOnMetered(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().AllowDownloadOnMetered()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AllowDownloadOnMetered(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AllowDownloadOnMetered(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceDeadlineInDays(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ComplianceDeadlineInDays()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ComplianceDeadlineInDays(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ComplianceDeadlineInDays(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceGracePeriodInDays(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ComplianceGracePeriodInDays()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ComplianceGracePeriodInDays(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ComplianceGracePeriodInDays(*reinterpret_cast const*>(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OptOutOfAutoReboot(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().OptOutOfAutoReboot()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_OptOutOfAutoReboot(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().OptOutOfAutoReboot(*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_Reason(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Reason()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Timestamp(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Timestamp()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Update(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Update()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Reason(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Reason()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Administrator(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Administrator()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Status(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Status()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ProviderId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ProviderId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UpdateId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UpdateId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Timestamp(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Timestamp()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Title(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Title()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Description(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Description()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MoreInfoUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MoreInfoUrl()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Category(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Category()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Operation(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Operation()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_ScanningStateChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().ScanningStateChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_ScanningStateChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().ScanningStateChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_WorkingStateChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().WorkingStateChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_WorkingStateChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().WorkingStateChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_ProgressChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().ProgressChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_ProgressChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().ProgressChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_AttentionRequiredReasonChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().AttentionRequiredReasonChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_AttentionRequiredReasonChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().AttentionRequiredReasonChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_ActionCompleted(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().ActionCompleted(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_ActionCompleted(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().ActionCompleted(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_ScanCompleted(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().ScanCompleted(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_ScanCompleted(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().ScanCompleted(*reinterpret_cast(&token)); return 0; } int32_t __stdcall get_IsScanning(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsScanning()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsWorking(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsWorking()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LastSuccessfulScanTimestamp(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().LastSuccessfulScanTimestamp()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetApplicableUpdates(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>(this->shim().GetApplicableUpdates()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetMostRecentCompletedUpdates(int32_t count, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>(this->shim().GetMostRecentCompletedUpdates(count)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetMostRecentCompletedUpdatesAsync(int32_t count, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>>(this->shim().GetMostRecentCompletedUpdatesAsync(count)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall StartScan(bool userInitiated) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StartScan(userInitiated); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetProvider(void* id, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetProvider(*reinterpret_cast(&id))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ProviderIds(uint32_t* __valueSize, void*** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); std::tie(*__valueSize, *value) = detach_abi(this->shim().ProviderIds()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetApplicableSoftwareUpdates(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from>(this->shim().GetApplicableSoftwareUpdates()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall PerformScan(void* options, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().PerformScan(*reinterpret_cast(&options))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* clientId, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&clientId))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* clientId, uint32_t __providerIdFilterSize, void** providerIdFilter, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&clientId), array_view(reinterpret_cast(providerIdFilter), reinterpret_cast(providerIdFilter) + __providerIdFilterSize))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsUserInitiated(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsUserInitiated()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsUserInitiated(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsUserInitiated(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AllowBypassThrottling(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AllowBypassThrottling()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AllowBypassThrottling(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AllowBypassThrottling(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PerformUpdateActions(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PerformUpdateActions()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PerformUpdateActions(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PerformUpdateActions(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(bool isUserInitiated, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(isUserInitiated)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Update(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Update()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ActionProgress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ActionProgress()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Title(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Title()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Title(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Title(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Description(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Description()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Description(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Description(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MoreInfoUrl(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MoreInfoUrl()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_MoreInfoUrl(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().MoreInfoUrl(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceDeadlineInDays(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ComplianceDeadlineInDays()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ComplianceDeadlineInDays(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ComplianceDeadlineInDays(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ComplianceGracePeriodInDays(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ComplianceGracePeriodInDays()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ComplianceGracePeriodInDays(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ComplianceGracePeriodInDays(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OrganizationName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OrganizationName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_OrganizationName(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().OrganizationName(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_OptOutOfAutoReboot(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OptOutOfAutoReboot()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_OptOutOfAutoReboot(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().OptOutOfAutoReboot(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateInstance(void* title, void* description, void* moreInfoUrl, int32_t complianceDeadlineInDays, int32_t complianceGracePeriodInDays, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateInstance(*reinterpret_cast(&title), *reinterpret_cast(&description), *reinterpret_cast(&moreInfoUrl), complianceDeadlineInDays, complianceGracePeriodInDays)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ProviderId(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ProviderId()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Succeeded(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Succeeded()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExtendedError(winrt::hresult* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExtendedError()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Updates(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Updates()); return 0; } catch (...) { return to_hresult(); } }; #endif } WINRT_EXPORT namespace winrt::Windows::Management::Update { constexpr auto operator|(WindowsUpdateAdministratorOptions const left, WindowsUpdateAdministratorOptions const right) noexcept { return static_cast(impl::to_underlying_type(left) | impl::to_underlying_type(right)); } constexpr auto operator|=(WindowsUpdateAdministratorOptions& left, WindowsUpdateAdministratorOptions const right) noexcept { left = left | right; return left; } constexpr auto operator&(WindowsUpdateAdministratorOptions const left, WindowsUpdateAdministratorOptions const right) noexcept { return static_cast(impl::to_underlying_type(left) & impl::to_underlying_type(right)); } constexpr auto operator&=(WindowsUpdateAdministratorOptions& left, WindowsUpdateAdministratorOptions const right) noexcept { left = left & right; return left; } constexpr auto operator~(WindowsUpdateAdministratorOptions const value) noexcept { return static_cast(~impl::to_underlying_type(value)); } constexpr auto operator^(WindowsUpdateAdministratorOptions const left, WindowsUpdateAdministratorOptions const right) noexcept { return static_cast(impl::to_underlying_type(left) ^ impl::to_underlying_type(right)); } constexpr auto operator^=(WindowsUpdateAdministratorOptions& left, WindowsUpdateAdministratorOptions const right) noexcept { left = left ^ right; return left; } inline auto PreviewBuildsManager::GetDefault() { return impl::call_factory_cast([](IPreviewBuildsManagerStatics const& f) { return f.GetDefault(); }); } inline auto PreviewBuildsManager::IsSupported() { return impl::call_factory_cast([](IPreviewBuildsManagerStatics const& f) { return f.IsSupported(); }); } inline WindowsSoftwareUpdate::WindowsSoftwareUpdate(param::hstring const& providerId, winrt::Windows::Management::Update::WindowsSoftwareUpdateInstallationType const& installationType, param::hstring const& updateId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& sourceVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& targetVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo const& appPackageInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo const& executionInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo const& optionalInfo) : WindowsSoftwareUpdate(impl::call_factory([&](IWindowsSoftwareUpdateFactory const& f) { return f.CreateInstance(providerId, installationType, updateId, title, description, moreInfoUrl, downloadSizeInBytes, installSizeInBytes, sourceVersion, targetVersion, appPackageInfo, executionInfo, optionalInfo); })) { } inline WindowsSoftwareUpdate::WindowsSoftwareUpdate(param::hstring const& providerId, winrt::Windows::Management::Update::WindowsSoftwareUpdateInstallationType const& installationType, param::hstring const& updateId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, uint64_t downloadSizeInBytes, uint64_t installSizeInBytes, winrt::Windows::Foundation::IReference const& productCode, param::hstring const& packageFamilyName, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& sourceVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateVersion const& targetVersion, winrt::Windows::Management::Update::WindowsSoftwareUpdateAppPackageInfo const& appPackageInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateExecutionInfo const& executionInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalInfo const& optionalInfo) : WindowsSoftwareUpdate(impl::call_factory([&](IWindowsSoftwareUpdateFactory const& f) { return f.CreateInstance2(providerId, installationType, updateId, title, description, moreInfoUrl, downloadSizeInBytes, installSizeInBytes, productCode, packageFamilyName, sourceVersion, targetVersion, appPackageInfo, executionInfo, optionalInfo); })) { } inline WindowsSoftwareUpdateActionInfo::WindowsSoftwareUpdateActionInfo(param::hstring const& fileName, param::hstring const& fileArguments, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionType const& actionType) : WindowsSoftwareUpdateActionInfo(impl::call_factory([&](IWindowsSoftwareUpdateActionInfoFactory const& f) { return f.CreateInstance(fileName, fileArguments, actionType); })) { } inline WindowsSoftwareUpdateAppPackageInfo::WindowsSoftwareUpdateAppPackageInfo(param::hstring const& packageFamilyName, winrt::Windows::Management::Update::WindowsSoftwareUpdateArchitecture const& packageArchitecture, winrt::Windows::Foundation::Uri const& installUri) : WindowsSoftwareUpdateAppPackageInfo(impl::call_factory([&](IWindowsSoftwareUpdateAppPackageInfoFactory const& f) { return f.CreateInstance(packageFamilyName, packageArchitecture, installUri); })) { } inline WindowsSoftwareUpdateApprovalInfo::WindowsSoftwareUpdateApprovalInfo(bool userInitiated, bool appClosure, bool meteredNetwork, bool seeker) : WindowsSoftwareUpdateApprovalInfo(impl::call_factory([&](IWindowsSoftwareUpdateApprovalInfoFactory const& f) { return f.CreateInstance(userInitiated, appClosure, meteredNetwork, seeker); })) { } inline WindowsSoftwareUpdateExecutionInfo::WindowsSoftwareUpdateExecutionInfo(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& downloadInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& installInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo const& actions) : WindowsSoftwareUpdateExecutionInfo(impl::call_factory([&](IWindowsSoftwareUpdateExecutionInfoFactory const& f) { return f.CreateInstance(downloadInfo, installInfo, actions); })) { } inline WindowsSoftwareUpdateExecutionInfo::WindowsSoftwareUpdateExecutionInfo(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& deployInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateOptionalActionInfo const& actions) : WindowsSoftwareUpdateExecutionInfo(impl::call_factory([&](IWindowsSoftwareUpdateExecutionInfoFactory const& f) { return f.CreateInstance2(deployInfo, actions); })) { } inline WindowsSoftwareUpdateLocalizationInfo::WindowsSoftwareUpdateLocalizationInfo(uint32_t languageId, param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl) : WindowsSoftwareUpdateLocalizationInfo(impl::call_factory([&](IWindowsSoftwareUpdateLocalizationInfoFactory const& f) { return f.CreateInstance(languageId, title, description, moreInfoUrl); })) { } inline WindowsSoftwareUpdateOptionalActionInfo::WindowsSoftwareUpdateOptionalActionInfo(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndDeployInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndInstallInfo, winrt::Windows::Management::Update::WindowsSoftwareUpdateActionInfo const& closeAndRestartInfo) : WindowsSoftwareUpdateOptionalActionInfo(impl::call_factory([&](IWindowsSoftwareUpdateOptionalActionInfoFactory const& f) { return f.CreateInstance(closeAndDeployInfo, closeAndInstallInfo, closeAndRestartInfo); })) { } inline WindowsSoftwareUpdateOptionalInfo::WindowsSoftwareUpdateOptionalInfo(winrt::Windows::Foundation::IReference const& complianceDeadlineInDays, winrt::Windows::Foundation::IReference const& complianceGracePeriodInDays) : WindowsSoftwareUpdateOptionalInfo(impl::call_factory([&](IWindowsSoftwareUpdateOptionalInfoFactory const& f) { return f.CreateInstance(complianceDeadlineInDays, complianceGracePeriodInDays); })) { } inline WindowsSoftwareUpdateOptionalInfo::WindowsSoftwareUpdateOptionalInfo(param::iterable const& localizationInfo, winrt::Windows::Foundation::IReference const& complianceDeadlineInDays, winrt::Windows::Foundation::IReference const& complianceGracePeriodInDays) : WindowsSoftwareUpdateOptionalInfo(impl::call_factory([&](IWindowsSoftwareUpdateOptionalInfoFactory const& f) { return f.CreateInstance2(localizationInfo, complianceDeadlineInDays, complianceGracePeriodInDays); })) { } inline WindowsSoftwareUpdateProvider::WindowsSoftwareUpdateProvider(param::hstring const& folderPath) : WindowsSoftwareUpdateProvider(impl::call_factory([&](IWindowsSoftwareUpdateProviderFactory const& f) { return f.CreateInstance(folderPath); })) { } inline WindowsSoftwareUpdateProviderActionResult::WindowsSoftwareUpdateProviderActionResult(winrt::Windows::Management::Update::WindowsSoftwareUpdateActionResult const& actionResult, winrt::Windows::Management::Update::WindowsSoftwareUpdateRestartReason const& restartReason, uint32_t resultCode, uint64_t extendedError) : WindowsSoftwareUpdateProviderActionResult(impl::call_factory([&](IWindowsSoftwareUpdateProviderActionResultFactory const& f) { return f.CreateInstance(actionResult, restartReason, resultCode, extendedError); })) { } inline WindowsSoftwareUpdateProviderStatus::WindowsSoftwareUpdateProviderStatus(param::hstring const& providerId) : WindowsSoftwareUpdateProviderStatus(impl::call_factory([&](IWindowsSoftwareUpdateProviderStatusFactory const& f) { return f.CreateInstance(providerId); })) { } inline WindowsSoftwareUpdateResult::WindowsSoftwareUpdateResult(bool succeeded, uint32_t resultCode) : WindowsSoftwareUpdateResult(impl::call_factory([&](IWindowsSoftwareUpdateResultFactory const& f) { return f.CreateInstance(succeeded, resultCode); })) { } inline WindowsSoftwareUpdateResult::WindowsSoftwareUpdateResult(bool succeeded, uint32_t resultCode, uint64_t extendedError) : WindowsSoftwareUpdateResult(impl::call_factory([&](IWindowsSoftwareUpdateResultFactory const& f) { return f.CreateInstance2(succeeded, resultCode, extendedError); })) { } inline WindowsSoftwareUpdateResult::WindowsSoftwareUpdateResult(bool succeeded, bool cancelRequested, uint32_t resultCode, uint64_t extendedError) : WindowsSoftwareUpdateResult(impl::call_factory([&](IWindowsSoftwareUpdateResultFactory const& f) { return f.CreateInstance3(succeeded, cancelRequested, resultCode, extendedError); })) { } inline WindowsSoftwareUpdateScanResult::WindowsSoftwareUpdateScanResult(bool succeeded, uint32_t resultCode, param::iterable const& updates) : WindowsSoftwareUpdateScanResult(impl::call_factory([&](IWindowsSoftwareUpdateScanResultFactory const& f) { return f.CreateInstance(succeeded, resultCode, updates); })) { } inline WindowsSoftwareUpdateScanResult::WindowsSoftwareUpdateScanResult(bool succeeded, uint32_t resultCode, uint64_t extendedError, param::iterable const& updates) : WindowsSoftwareUpdateScanResult(impl::call_factory([&](IWindowsSoftwareUpdateScanResultFactory const& f) { return f.CreateInstance2(succeeded, resultCode, extendedError, updates); })) { } inline WindowsSoftwareUpdateVersion::WindowsSoftwareUpdateVersion(uint32_t major, uint32_t minor, uint32_t revisionMajor, uint32_t revisionMinor) : WindowsSoftwareUpdateVersion(impl::call_factory([&](IWindowsSoftwareUpdateVersionFactory const& f) { return f.CreateInstance(major, minor, revisionMajor, revisionMinor); })) { } inline auto WindowsUpdateAdministrator::GetRegisteredAdministrator(param::hstring const& organizationName) { return impl::call_factory([&](IWindowsUpdateAdministratorStatics const& f) { return f.GetRegisteredAdministrator(organizationName); }); } inline auto WindowsUpdateAdministrator::RegisterForAdministration(param::hstring const& organizationName, winrt::Windows::Management::Update::WindowsUpdateAdministratorOptions const& options) { return impl::call_factory([&](IWindowsUpdateAdministratorStatics const& f) { return f.RegisterForAdministration(organizationName, options); }); } inline auto WindowsUpdateAdministrator::UnregisterForAdministration(param::hstring const& organizationName) { return impl::call_factory([&](IWindowsUpdateAdministratorStatics const& f) { return f.UnregisterForAdministration(organizationName); }); } inline auto WindowsUpdateAdministrator::GetRegisteredAdministratorName() { return impl::call_factory_cast([](IWindowsUpdateAdministratorStatics const& f) { return f.GetRegisteredAdministratorName(); }); } inline auto WindowsUpdateAdministrator::RequestRestart(winrt::Windows::Management::Update::WindowsUpdateRestartRequestOptions const& restartOptions) { return impl::call_factory([&](IWindowsUpdateAdministratorStatics const& f) { return f.RequestRestart(restartOptions); }); } inline auto WindowsUpdateAdministrator::CancelRestartRequest(param::hstring const& requestRestartToken) { impl::call_factory([&](IWindowsUpdateAdministratorStatics const& f) { return f.CancelRestartRequest(requestRestartToken); }); } inline WindowsUpdateApprovalData::WindowsUpdateApprovalData() : WindowsUpdateApprovalData(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline WindowsUpdateManager::WindowsUpdateManager(param::hstring const& clientId) : WindowsUpdateManager(impl::call_factory([&](IWindowsUpdateManagerFactory const& f) { return f.CreateInstance(clientId); })) { } inline WindowsUpdateManager::WindowsUpdateManager(param::hstring const& clientId, array_view providerIdFilter) : WindowsUpdateManager(impl::call_factory([&](IWindowsUpdateManagerFactory2 const& f) { return f.CreateInstance(clientId, providerIdFilter); })) { } inline WindowsUpdateManagerScanOptions::WindowsUpdateManagerScanOptions() : WindowsUpdateManagerScanOptions(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline WindowsUpdateManagerScanOptions::WindowsUpdateManagerScanOptions(bool isUserInitiated) : WindowsUpdateManagerScanOptions(impl::call_factory([&](IWindowsUpdateManagerScanOptionsFactory const& f) { return f.CreateInstance(isUserInitiated); })) { } inline WindowsUpdateRestartRequestOptions::WindowsUpdateRestartRequestOptions() : WindowsUpdateRestartRequestOptions(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline WindowsUpdateRestartRequestOptions::WindowsUpdateRestartRequestOptions(param::hstring const& title, param::hstring const& description, winrt::Windows::Foundation::Uri const& moreInfoUrl, int32_t complianceDeadlineInDays, int32_t complianceGracePeriodInDays) : WindowsUpdateRestartRequestOptions(impl::call_factory([&](IWindowsUpdateRestartRequestOptionsFactory const& f) { return f.CreateInstance(title, description, moreInfoUrl, complianceDeadlineInDays, complianceGracePeriodInDays); })) { } } 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 {}; 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