// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_Networking_XboxLive_H #define WINRT_Windows_Networking_XboxLive_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.Networking.h" #include "winrt/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.Networking.2.h" #include "winrt/impl/Windows.Storage.Streams.2.h" #include "winrt/impl/Windows.Networking.XboxLive.2.h" namespace winrt::impl { template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::SnapshotChanged(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_SnapshotChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_SnapshotChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::SnapshotChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, SnapshotChanged(handler)); } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::SnapshotChanged(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_SnapshotChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_SnapshotChanged(impl::bind_in(token)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::GetSnapshotAsBase64() 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->GetSnapshotAsBase64(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetSnapshotAsBase64(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::GetSnapshotAsBuffer() 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->GetSnapshotAsBuffer(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetSnapshotAsBuffer(&value)); } return winrt::Windows::Storage::Streams::IBuffer{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::GetSnapshotAsBytes(array_view buffer, uint32_t& bytesWritten) 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->GetSnapshotAsBytes(buffer.size(), put_abi(buffer), &bytesWritten)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetSnapshotAsBytes(buffer.size(), put_abi(buffer), &bytesWritten)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::Compare(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& otherDeviceAddress) const { int32_t 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->Compare(*(void**)(&otherDeviceAddress), &result)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->Compare(*(void**)(&otherDeviceAddress), &result)); } return result; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::IsValid() 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_IsValid(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsValid(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::IsLocal() 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_IsLocal(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsLocal(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddress::NetworkAccessKind() const { winrt::Windows::Networking::XboxLive::XboxLiveNetworkAccessKind value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_NetworkAccessKind(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NetworkAccessKind(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddressStatics::CreateFromSnapshotBase64(param::hstring const& base64) 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->CreateFromSnapshotBase64(*(void**)(&base64), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateFromSnapshotBase64(*(void**)(&base64), &value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddressStatics::CreateFromSnapshotBuffer(winrt::Windows::Storage::Streams::IBuffer const& buffer) 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->CreateFromSnapshotBuffer(*(void**)(&buffer), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateFromSnapshotBuffer(*(void**)(&buffer), &value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddressStatics::CreateFromSnapshotBytes(array_view buffer) 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->CreateFromSnapshotBytes(buffer.size(), get_abi(buffer), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateFromSnapshotBytes(buffer.size(), get_abi(buffer), &value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddressStatics::GetLocal() 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->GetLocal(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetLocal(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveDeviceAddressStatics::MaxSnapshotBytesSize() 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_MaxSnapshotBytesSize(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MaxSnapshotBytesSize(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::StateChanged(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_StateChanged(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_StateChanged(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::StateChanged(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, StateChanged(handler)); } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::StateChanged(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_StateChanged(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_StateChanged(impl::bind_in(token)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::DeleteAsync() const { void* action{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->DeleteAsync(&action)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->DeleteAsync(&action)); } return winrt::Windows::Foundation::IAsyncAction{ action, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::GetRemoteSocketAddressBytes(array_view socketAddress) 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->GetRemoteSocketAddressBytes(socketAddress.size(), put_abi(socketAddress))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetRemoteSocketAddressBytes(socketAddress.size(), put_abi(socketAddress))); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::GetLocalSocketAddressBytes(array_view socketAddress) 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->GetLocalSocketAddressBytes(socketAddress.size(), put_abi(socketAddress))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetLocalSocketAddressBytes(socketAddress.size(), put_abi(socketAddress))); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::State() const { winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairState value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_State(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_State(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::Template() 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_Template(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Template(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairTemplate{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::RemoteDeviceAddress() 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_RemoteDeviceAddress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RemoteDeviceAddress(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::RemoteHostName() 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_RemoteHostName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RemoteHostName(&value)); } return winrt::Windows::Networking::HostName{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::RemotePort() 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_RemotePort(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_RemotePort(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::LocalHostName() 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_LocalHostName(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LocalHostName(&value)); } return winrt::Windows::Networking::HostName{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPair::LocalPort() 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_LocalPort(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_LocalPort(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairCreationResult::DeviceAddress() 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_DeviceAddress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DeviceAddress(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairCreationResult::Status() const { winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairCreationStatus value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_Networking_XboxLive_IXboxLiveEndpointPairCreationResult::IsExistingPathEvaluation() 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_IsExistingPathEvaluation(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsExistingPathEvaluation(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairCreationResult::EndpointPair() 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_EndpointPair(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_EndpointPair(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPair{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairStateChangedEventArgs::OldState() const { winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairState value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_OldState(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_OldState(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairStateChangedEventArgs::NewState() const { winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairState value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_NewState(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NewState(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairStatics::FindEndpointPairBySocketAddressBytes(array_view localSocketAddress, array_view remoteSocketAddress) const { void* endpointPair{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FindEndpointPairBySocketAddressBytes(localSocketAddress.size(), get_abi(localSocketAddress), remoteSocketAddress.size(), get_abi(remoteSocketAddress), &endpointPair)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FindEndpointPairBySocketAddressBytes(localSocketAddress.size(), get_abi(localSocketAddress), remoteSocketAddress.size(), get_abi(remoteSocketAddress), &endpointPair)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPair{ endpointPair, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairStatics::FindEndpointPairByHostNamesAndPorts(winrt::Windows::Networking::HostName const& localHostName, param::hstring const& localPort, winrt::Windows::Networking::HostName const& remoteHostName, param::hstring const& remotePort) const { void* endpointPair{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->FindEndpointPairByHostNamesAndPorts(*(void**)(&localHostName), *(void**)(&localPort), *(void**)(&remoteHostName), *(void**)(&remotePort), &endpointPair)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->FindEndpointPairByHostNamesAndPorts(*(void**)(&localHostName), *(void**)(&localPort), *(void**)(&remoteHostName), *(void**)(&remotePort), &endpointPair)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPair{ endpointPair, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::InboundEndpointPairCreated(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_InboundEndpointPairCreated(*(void**)(&handler), put_abi(token))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->add_InboundEndpointPairCreated(*(void**)(&handler), put_abi(token))); } return token; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::InboundEndpointPairCreated(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, InboundEndpointPairCreated(handler)); } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::InboundEndpointPairCreated(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_InboundEndpointPairCreated(impl::bind_in(token)); } else { auto const _winrt_abi_type = *(abi_t**)this; _winrt_abi_type->remove_InboundEndpointPairCreated(impl::bind_in(token)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::CreateEndpointPairAsync(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress) 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->CreateEndpointPairDefaultAsync(*(void**)(&deviceAddress), &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateEndpointPairDefaultAsync(*(void**)(&deviceAddress), &operation)); } return winrt::Windows::Foundation::IAsyncOperation{ operation, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::CreateEndpointPairAsync(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress, winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairCreationBehaviors const& behaviors) 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->CreateEndpointPairWithBehaviorsAsync(*(void**)(&deviceAddress), static_cast(behaviors), &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateEndpointPairWithBehaviorsAsync(*(void**)(&deviceAddress), static_cast(behaviors), &operation)); } return winrt::Windows::Foundation::IAsyncOperation{ operation, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::CreateEndpointPairForPortsAsync(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress, param::hstring const& initiatorPort, param::hstring const& acceptorPort) 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->CreateEndpointPairForPortsDefaultAsync(*(void**)(&deviceAddress), *(void**)(&initiatorPort), *(void**)(&acceptorPort), &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateEndpointPairForPortsDefaultAsync(*(void**)(&deviceAddress), *(void**)(&initiatorPort), *(void**)(&acceptorPort), &operation)); } return winrt::Windows::Foundation::IAsyncOperation{ operation, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::CreateEndpointPairForPortsAsync(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress, param::hstring const& initiatorPort, param::hstring const& acceptorPort, winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairCreationBehaviors const& behaviors) 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->CreateEndpointPairForPortsWithBehaviorsAsync(*(void**)(&deviceAddress), *(void**)(&initiatorPort), *(void**)(&acceptorPort), static_cast(behaviors), &operation)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->CreateEndpointPairForPortsWithBehaviorsAsync(*(void**)(&deviceAddress), *(void**)(&initiatorPort), *(void**)(&acceptorPort), static_cast(behaviors), &operation)); } return winrt::Windows::Foundation::IAsyncOperation{ operation, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::Name() const { void* value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->get_Name(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Name(&value)); } return hstring{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::SocketKind() const { winrt::Windows::Networking::XboxLive::XboxLiveSocketKind value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_SocketKind(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_SocketKind(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::InitiatorBoundPortRangeLower() const { uint16_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_InitiatorBoundPortRangeLower(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InitiatorBoundPortRangeLower(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::InitiatorBoundPortRangeUpper() const { uint16_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_InitiatorBoundPortRangeUpper(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_InitiatorBoundPortRangeUpper(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::AcceptorBoundPortRangeLower() const { uint16_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_AcceptorBoundPortRangeLower(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AcceptorBoundPortRangeLower(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::AcceptorBoundPortRangeUpper() const { uint16_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_AcceptorBoundPortRangeUpper(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_AcceptorBoundPortRangeUpper(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplate::EndpointPairs() 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_EndpointPairs(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_EndpointPairs(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplateStatics::GetTemplateByName(param::hstring const& name) const { void* namedTemplate{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->GetTemplateByName(*(void**)(&name), &namedTemplate)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetTemplateByName(*(void**)(&name), &namedTemplate)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPairTemplate{ namedTemplate, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveEndpointPairTemplateStatics::Templates() 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_Templates(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Templates(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveInboundEndpointPairCreatedEventArgs::EndpointPair() 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_EndpointPair(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_EndpointPair(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveEndpointPair{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::MeasureAsync() const { void* action{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_cast_result_code); check_hresult(_winrt_cast_result_code); auto const _winrt_abi_type = *(abi_t**)&_winrt_casted_result; check_hresult(_winrt_abi_type->MeasureAsync(&action)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->MeasureAsync(&action)); } return winrt::Windows::Foundation::IAsyncAction{ action, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::GetMetricResultsForDevice(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress) 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->GetMetricResultsForDevice(*(void**)(&deviceAddress), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetMetricResultsForDevice(*(void**)(&deviceAddress), &value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::GetMetricResultsForMetric(winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMetric const& metric) 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->GetMetricResultsForMetric(static_cast(metric), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetMetricResultsForMetric(static_cast(metric), &value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::GetMetricResult(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress, winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMetric const& metric) 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->GetMetricResult(*(void**)(&deviceAddress), static_cast(metric), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetMetricResult(*(void**)(&deviceAddress), static_cast(metric), &value)); } return winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMetricResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::GetPrivatePayloadResult(winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress const& deviceAddress) 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->GetPrivatePayloadResult(*(void**)(&deviceAddress), &value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->GetPrivatePayloadResult(*(void**)(&deviceAddress), &value)); } return winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServicePrivatePayloadResult{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::Metrics() 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_Metrics(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Metrics(&value)); } return winrt::Windows::Foundation::Collections::IVector{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::DeviceAddresses() 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_DeviceAddresses(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DeviceAddresses(&value)); } return winrt::Windows::Foundation::Collections::IVector{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::ShouldRequestPrivatePayloads() 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_ShouldRequestPrivatePayloads(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_ShouldRequestPrivatePayloads(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::ShouldRequestPrivatePayloads(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_ShouldRequestPrivatePayloads(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_ShouldRequestPrivatePayloads(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::TimeoutInMilliseconds() 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_TimeoutInMilliseconds(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_TimeoutInMilliseconds(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::TimeoutInMilliseconds(uint32_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_TimeoutInMilliseconds(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_TimeoutInMilliseconds(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::NumberOfProbesToAttempt() 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_NumberOfProbesToAttempt(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NumberOfProbesToAttempt(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::NumberOfProbesToAttempt(uint32_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_NumberOfProbesToAttempt(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_NumberOfProbesToAttempt(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::NumberOfResultsPending() 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_NumberOfResultsPending(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_NumberOfResultsPending(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::MetricResults() 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_MetricResults(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MetricResults(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurement::PrivatePayloadResults() 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_PrivatePayloadResults(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PrivatePayloadResults(&value)); } return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::PublishPrivatePayloadBytes(array_view payload) 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->PublishPrivatePayloadBytes(payload.size(), get_abi(payload))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->PublishPrivatePayloadBytes(payload.size(), get_abi(payload))); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::ClearPrivatePayload() 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->ClearPrivatePayload()); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->ClearPrivatePayload()); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::MaxSimultaneousProbeConnections() 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_MaxSimultaneousProbeConnections(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MaxSimultaneousProbeConnections(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::MaxSimultaneousProbeConnections(uint32_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_MaxSimultaneousProbeConnections(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_MaxSimultaneousProbeConnections(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::IsSystemOutboundBandwidthConstrained() 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_IsSystemOutboundBandwidthConstrained(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSystemOutboundBandwidthConstrained(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::IsSystemOutboundBandwidthConstrained(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_IsSystemOutboundBandwidthConstrained(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsSystemOutboundBandwidthConstrained(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::IsSystemInboundBandwidthConstrained() 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_IsSystemInboundBandwidthConstrained(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_IsSystemInboundBandwidthConstrained(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::IsSystemInboundBandwidthConstrained(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_IsSystemInboundBandwidthConstrained(value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_IsSystemInboundBandwidthConstrained(value)); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::PublishedPrivatePayload() 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_PublishedPrivatePayload(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_PublishedPrivatePayload(&value)); } return winrt::Windows::Storage::Streams::IBuffer{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::PublishedPrivatePayload(winrt::Windows::Storage::Streams::IBuffer 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_PublishedPrivatePayload(*(void**)(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->put_PublishedPrivatePayload(*(void**)(&value))); } } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMeasurementStatics::MaxPrivatePayloadSize() 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_MaxPrivatePayloadSize(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_MaxPrivatePayloadSize(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMetricResult::Status() const { winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMeasurementStatus value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_Networking_XboxLive_IXboxLiveQualityOfServiceMetricResult::DeviceAddress() 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_DeviceAddress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DeviceAddress(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMetricResult::Metric() const { winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMetric value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_Metric(reinterpret_cast(&value))); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Metric(reinterpret_cast(&value))); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServiceMetricResult::Value() 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_Value(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Value(&value)); } return value; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServicePrivatePayloadResult::Status() const { winrt::Windows::Networking::XboxLive::XboxLiveQualityOfServiceMeasurementStatus value{}; if constexpr (!std::is_same_v) { winrt::hresult _winrt_cast_result_code; auto const _winrt_casted_result = impl::try_as_with_reason(static_cast(this), _winrt_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_Networking_XboxLive_IXboxLiveQualityOfServicePrivatePayloadResult::DeviceAddress() 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_DeviceAddress(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_DeviceAddress(&value)); } return winrt::Windows::Networking::XboxLive::XboxLiveDeviceAddress{ value, take_ownership_from_abi }; } template auto consume_Windows_Networking_XboxLive_IXboxLiveQualityOfServicePrivatePayloadResult::Value() 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_Value(&value)); } else { auto const _winrt_abi_type = *(abi_t**)this; check_hresult(_winrt_abi_type->get_Value(&value)); } return winrt::Windows::Storage::Streams::IBuffer{ value, take_ownership_from_abi }; } #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_SnapshotChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().SnapshotChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_SnapshotChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().SnapshotChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall GetSnapshotAsBase64(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetSnapshotAsBase64()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetSnapshotAsBuffer(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetSnapshotAsBuffer()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetSnapshotAsBytes(uint32_t __bufferSize, uint8_t* buffer, uint32_t* bytesWritten) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().GetSnapshotAsBytes(array_view(reinterpret_cast(buffer), reinterpret_cast(buffer) + __bufferSize), *bytesWritten); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Compare(void* otherDeviceAddress, int32_t* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Compare(*reinterpret_cast(&otherDeviceAddress))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsValid(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsValid()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsLocal(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsLocal()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NetworkAccessKind(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NetworkAccessKind()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CreateFromSnapshotBase64(void* base64, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateFromSnapshotBase64(*reinterpret_cast(&base64))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateFromSnapshotBuffer(void* buffer, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateFromSnapshotBuffer(*reinterpret_cast(&buffer))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateFromSnapshotBytes(uint32_t __bufferSize, uint8_t* buffer, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CreateFromSnapshotBytes(array_view(reinterpret_cast(buffer), reinterpret_cast(buffer) + __bufferSize))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetLocal(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetLocal()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MaxSnapshotBytesSize(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MaxSnapshotBytesSize()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_StateChanged(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().StateChanged(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_StateChanged(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().StateChanged(*reinterpret_cast(&token)); return 0; } int32_t __stdcall DeleteAsync(void** action) noexcept final try { clear_abi(action); typename D::abi_guard guard(this->shim()); *action = detach_from(this->shim().DeleteAsync()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetRemoteSocketAddressBytes(uint32_t __socketAddressSize, uint8_t* socketAddress) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().GetRemoteSocketAddressBytes(array_view(reinterpret_cast(socketAddress), reinterpret_cast(socketAddress) + __socketAddressSize)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetLocalSocketAddressBytes(uint32_t __socketAddressSize, uint8_t* socketAddress) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().GetLocalSocketAddressBytes(array_view(reinterpret_cast(socketAddress), reinterpret_cast(socketAddress) + __socketAddressSize)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_State(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().State()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Template(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Template()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RemoteDeviceAddress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RemoteDeviceAddress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RemoteHostName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RemoteHostName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RemotePort(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RemotePort()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LocalHostName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LocalHostName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LocalPort(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LocalPort()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_DeviceAddress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DeviceAddress()); 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(); } int32_t __stdcall get_IsExistingPathEvaluation(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsExistingPathEvaluation()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_EndpointPair(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().EndpointPair()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_OldState(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().OldState()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NewState(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NewState()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall FindEndpointPairBySocketAddressBytes(uint32_t __localSocketAddressSize, uint8_t* localSocketAddress, uint32_t __remoteSocketAddressSize, uint8_t* remoteSocketAddress, void** endpointPair) noexcept final try { clear_abi(endpointPair); typename D::abi_guard guard(this->shim()); *endpointPair = detach_from(this->shim().FindEndpointPairBySocketAddressBytes(array_view(reinterpret_cast(localSocketAddress), reinterpret_cast(localSocketAddress) + __localSocketAddressSize), array_view(reinterpret_cast(remoteSocketAddress), reinterpret_cast(remoteSocketAddress) + __remoteSocketAddressSize))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall FindEndpointPairByHostNamesAndPorts(void* localHostName, void* localPort, void* remoteHostName, void* remotePort, void** endpointPair) noexcept final try { clear_abi(endpointPair); typename D::abi_guard guard(this->shim()); *endpointPair = detach_from(this->shim().FindEndpointPairByHostNamesAndPorts(*reinterpret_cast(&localHostName), *reinterpret_cast(&localPort), *reinterpret_cast(&remoteHostName), *reinterpret_cast(&remotePort))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_InboundEndpointPairCreated(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().InboundEndpointPairCreated(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_InboundEndpointPairCreated(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().InboundEndpointPairCreated(*reinterpret_cast(&token)); return 0; } int32_t __stdcall CreateEndpointPairDefaultAsync(void* deviceAddress, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>(this->shim().CreateEndpointPairAsync(*reinterpret_cast(&deviceAddress))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateEndpointPairWithBehaviorsAsync(void* deviceAddress, uint32_t behaviors, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>(this->shim().CreateEndpointPairAsync(*reinterpret_cast(&deviceAddress), *reinterpret_cast(&behaviors))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateEndpointPairForPortsDefaultAsync(void* deviceAddress, void* initiatorPort, void* acceptorPort, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>(this->shim().CreateEndpointPairForPortsAsync(*reinterpret_cast(&deviceAddress), *reinterpret_cast(&initiatorPort), *reinterpret_cast(&acceptorPort))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall CreateEndpointPairForPortsWithBehaviorsAsync(void* deviceAddress, void* initiatorPort, void* acceptorPort, uint32_t behaviors, void** operation) noexcept final try { clear_abi(operation); typename D::abi_guard guard(this->shim()); *operation = detach_from>(this->shim().CreateEndpointPairForPortsAsync(*reinterpret_cast(&deviceAddress), *reinterpret_cast(&initiatorPort), *reinterpret_cast(&acceptorPort), *reinterpret_cast(&behaviors))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Name(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Name()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SocketKind(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SocketKind()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InitiatorBoundPortRangeLower(uint16_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InitiatorBoundPortRangeLower()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InitiatorBoundPortRangeUpper(uint16_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InitiatorBoundPortRangeUpper()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AcceptorBoundPortRangeLower(uint16_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AcceptorBoundPortRangeLower()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AcceptorBoundPortRangeUpper(uint16_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AcceptorBoundPortRangeUpper()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_EndpointPairs(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().EndpointPairs()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetTemplateByName(void* name, void** namedTemplate) noexcept final try { clear_abi(namedTemplate); typename D::abi_guard guard(this->shim()); *namedTemplate = detach_from(this->shim().GetTemplateByName(*reinterpret_cast(&name))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Templates(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Templates()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_EndpointPair(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().EndpointPair()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall MeasureAsync(void** action) noexcept final try { clear_abi(action); typename D::abi_guard guard(this->shim()); *action = detach_from(this->shim().MeasureAsync()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetMetricResultsForDevice(void* deviceAddress, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().GetMetricResultsForDevice(*reinterpret_cast(&deviceAddress))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetMetricResultsForMetric(int32_t metric, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().GetMetricResultsForMetric(*reinterpret_cast(&metric))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetMetricResult(void* deviceAddress, int32_t metric, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetMetricResult(*reinterpret_cast(&deviceAddress), *reinterpret_cast(&metric))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall GetPrivatePayloadResult(void* deviceAddress, void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().GetPrivatePayloadResult(*reinterpret_cast(&deviceAddress))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Metrics(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Metrics()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DeviceAddresses(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().DeviceAddresses()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ShouldRequestPrivatePayloads(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ShouldRequestPrivatePayloads()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_ShouldRequestPrivatePayloads(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ShouldRequestPrivatePayloads(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TimeoutInMilliseconds(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TimeoutInMilliseconds()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_TimeoutInMilliseconds(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().TimeoutInMilliseconds(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NumberOfProbesToAttempt(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NumberOfProbesToAttempt()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_NumberOfProbesToAttempt(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().NumberOfProbesToAttempt(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NumberOfResultsPending(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NumberOfResultsPending()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MetricResults(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().MetricResults()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PrivatePayloadResults(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().PrivatePayloadResults()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall PublishPrivatePayloadBytes(uint32_t __payloadSize, uint8_t* payload) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PublishPrivatePayloadBytes(array_view(reinterpret_cast(payload), reinterpret_cast(payload) + __payloadSize)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ClearPrivatePayload() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ClearPrivatePayload(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MaxSimultaneousProbeConnections(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MaxSimultaneousProbeConnections()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_MaxSimultaneousProbeConnections(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().MaxSimultaneousProbeConnections(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSystemOutboundBandwidthConstrained(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsSystemOutboundBandwidthConstrained()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsSystemOutboundBandwidthConstrained(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsSystemOutboundBandwidthConstrained(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsSystemInboundBandwidthConstrained(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsSystemInboundBandwidthConstrained()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsSystemInboundBandwidthConstrained(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsSystemInboundBandwidthConstrained(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_PublishedPrivatePayload(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().PublishedPrivatePayload()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_PublishedPrivatePayload(void* value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().PublishedPrivatePayload(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_MaxPrivatePayloadSize(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().MaxPrivatePayloadSize()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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(); } int32_t __stdcall get_DeviceAddress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DeviceAddress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Metric(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Metric()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Value(uint64_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Value()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { 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(); } int32_t __stdcall get_DeviceAddress(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DeviceAddress()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Value(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Value()); return 0; } catch (...) { return to_hresult(); } }; #endif } WINRT_EXPORT namespace winrt::Windows::Networking::XboxLive { constexpr auto operator|(XboxLiveEndpointPairCreationBehaviors const left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { return static_cast(impl::to_underlying_type(left) | impl::to_underlying_type(right)); } constexpr auto operator|=(XboxLiveEndpointPairCreationBehaviors& left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { left = left | right; return left; } constexpr auto operator&(XboxLiveEndpointPairCreationBehaviors const left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { return static_cast(impl::to_underlying_type(left) & impl::to_underlying_type(right)); } constexpr auto operator&=(XboxLiveEndpointPairCreationBehaviors& left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { left = left & right; return left; } constexpr auto operator~(XboxLiveEndpointPairCreationBehaviors const value) noexcept { return static_cast(~impl::to_underlying_type(value)); } constexpr auto operator^(XboxLiveEndpointPairCreationBehaviors const left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { return static_cast(impl::to_underlying_type(left) ^ impl::to_underlying_type(right)); } constexpr auto operator^=(XboxLiveEndpointPairCreationBehaviors& left, XboxLiveEndpointPairCreationBehaviors const right) noexcept { left = left ^ right; return left; } inline auto XboxLiveDeviceAddress::CreateFromSnapshotBase64(param::hstring const& base64) { return impl::call_factory([&](IXboxLiveDeviceAddressStatics const& f) { return f.CreateFromSnapshotBase64(base64); }); } inline auto XboxLiveDeviceAddress::CreateFromSnapshotBuffer(winrt::Windows::Storage::Streams::IBuffer const& buffer) { return impl::call_factory([&](IXboxLiveDeviceAddressStatics const& f) { return f.CreateFromSnapshotBuffer(buffer); }); } inline auto XboxLiveDeviceAddress::CreateFromSnapshotBytes(array_view buffer) { return impl::call_factory([&](IXboxLiveDeviceAddressStatics const& f) { return f.CreateFromSnapshotBytes(buffer); }); } inline auto XboxLiveDeviceAddress::GetLocal() { return impl::call_factory_cast([](IXboxLiveDeviceAddressStatics const& f) { return f.GetLocal(); }); } inline auto XboxLiveDeviceAddress::MaxSnapshotBytesSize() { return impl::call_factory_cast([](IXboxLiveDeviceAddressStatics const& f) { return f.MaxSnapshotBytesSize(); }); } inline auto XboxLiveEndpointPair::FindEndpointPairBySocketAddressBytes(array_view localSocketAddress, array_view remoteSocketAddress) { return impl::call_factory([&](IXboxLiveEndpointPairStatics const& f) { return f.FindEndpointPairBySocketAddressBytes(localSocketAddress, remoteSocketAddress); }); } inline auto XboxLiveEndpointPair::FindEndpointPairByHostNamesAndPorts(winrt::Windows::Networking::HostName const& localHostName, param::hstring const& localPort, winrt::Windows::Networking::HostName const& remoteHostName, param::hstring const& remotePort) { return impl::call_factory([&](IXboxLiveEndpointPairStatics const& f) { return f.FindEndpointPairByHostNamesAndPorts(localHostName, localPort, remoteHostName, remotePort); }); } inline auto XboxLiveEndpointPairTemplate::GetTemplateByName(param::hstring const& name) { return impl::call_factory([&](IXboxLiveEndpointPairTemplateStatics const& f) { return f.GetTemplateByName(name); }); } inline auto XboxLiveEndpointPairTemplate::Templates() { return impl::call_factory_cast(*)(IXboxLiveEndpointPairTemplateStatics const&), XboxLiveEndpointPairTemplate, IXboxLiveEndpointPairTemplateStatics>([](IXboxLiveEndpointPairTemplateStatics const& f) { return f.Templates(); }); } inline XboxLiveQualityOfServiceMeasurement::XboxLiveQualityOfServiceMeasurement() : XboxLiveQualityOfServiceMeasurement(impl::call_factory_cast([](winrt::Windows::Foundation::IActivationFactory const& f) { return f.template ActivateInstance(); })) { } inline auto XboxLiveQualityOfServiceMeasurement::PublishPrivatePayloadBytes(array_view payload) { impl::call_factory([&](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.PublishPrivatePayloadBytes(payload); }); } inline auto XboxLiveQualityOfServiceMeasurement::ClearPrivatePayload() { impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.ClearPrivatePayload(); }); } inline auto XboxLiveQualityOfServiceMeasurement::MaxSimultaneousProbeConnections() { return impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.MaxSimultaneousProbeConnections(); }); } inline auto XboxLiveQualityOfServiceMeasurement::MaxSimultaneousProbeConnections(uint32_t value) { impl::call_factory([&](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.MaxSimultaneousProbeConnections(value); }); } inline auto XboxLiveQualityOfServiceMeasurement::IsSystemOutboundBandwidthConstrained() { return impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.IsSystemOutboundBandwidthConstrained(); }); } inline auto XboxLiveQualityOfServiceMeasurement::IsSystemOutboundBandwidthConstrained(bool value) { impl::call_factory([&](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.IsSystemOutboundBandwidthConstrained(value); }); } inline auto XboxLiveQualityOfServiceMeasurement::IsSystemInboundBandwidthConstrained() { return impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.IsSystemInboundBandwidthConstrained(); }); } inline auto XboxLiveQualityOfServiceMeasurement::IsSystemInboundBandwidthConstrained(bool value) { impl::call_factory([&](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.IsSystemInboundBandwidthConstrained(value); }); } inline auto XboxLiveQualityOfServiceMeasurement::PublishedPrivatePayload() { return impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.PublishedPrivatePayload(); }); } inline auto XboxLiveQualityOfServiceMeasurement::PublishedPrivatePayload(winrt::Windows::Storage::Streams::IBuffer const& value) { impl::call_factory([&](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.PublishedPrivatePayload(value); }); } inline auto XboxLiveQualityOfServiceMeasurement::MaxPrivatePayloadSize() { return impl::call_factory_cast([](IXboxLiveQualityOfServiceMeasurementStatics const& f) { return f.MaxPrivatePayloadSize(); }); } } 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 {}; #endif #ifdef __cpp_lib_format #endif } #endif