// C++/WinRT v2.0.220110.5 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_Services_Maps_Guidance_H #define WINRT_Windows_Services_Maps_Guidance_H #include "winrt/base.h" static_assert(winrt::check_version(CPPWINRT_VERSION, "2.0.220110.5"), "Mismatched C++/WinRT headers."); #define CPPWINRT_VERSION "2.0.220110.5" #include "winrt/Windows.Services.Maps.h" #include "winrt/impl/Windows.Devices.Geolocation.2.h" #include "winrt/impl/Windows.Foundation.2.h" #include "winrt/impl/Windows.Foundation.Collections.2.h" #include "winrt/impl/Windows.Services.Maps.2.h" #include "winrt/impl/Windows.UI.2.h" #include "winrt/impl/Windows.Services.Maps.Guidance.2.h" namespace winrt::impl { template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceAudioNotificationKind) consume_Windows_Services_Maps_Guidance_IGuidanceAudioNotificationRequestedEventArgs::AudioNotification() const { winrt::Windows::Services::Maps::Guidance::GuidanceAudioNotificationKind value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceAudioNotificationRequestedEventArgs)->get_AudioNotification(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::Collections::IVectorView) consume_Windows_Services_Maps_Guidance_IGuidanceAudioNotificationRequestedEventArgs::AudioFilePaths() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceAudioNotificationRequestedEventArgs)->get_AudioFilePaths(&value)); return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceAudioNotificationRequestedEventArgs::AudioText() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceAudioNotificationRequestedEventArgs)->get_AudioText(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceLaneMarkers) consume_Windows_Services_Maps_Guidance_IGuidanceLaneInfo::LaneMarkers() const { winrt::Windows::Services::Maps::Guidance::GuidanceLaneMarkers value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceLaneInfo)->get_LaneMarkers(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceLaneInfo::IsOnRoute() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceLaneInfo)->get_IsOnRoute(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Devices::Geolocation::Geopoint) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::StartLocation() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_StartLocation(&value)); return winrt::Windows::Devices::Geolocation::Geopoint{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::DistanceFromRouteStart() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_DistanceFromRouteStart(&value)); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::DistanceFromPreviousManeuver() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_DistanceFromPreviousManeuver(&value)); return value; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::DepartureRoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_DepartureRoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::NextRoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_NextRoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::DepartureShortRoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_DepartureShortRoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::NextShortRoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_NextShortRoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceManeuverKind) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::Kind() const { winrt::Windows::Services::Maps::Guidance::GuidanceManeuverKind value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_Kind(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::StartAngle() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_StartAngle(&value)); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::EndAngle() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_EndAngle(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceRoadSignpost) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::RoadSignpost() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_RoadSignpost(&value)); return winrt::Windows::Services::Maps::Guidance::GuidanceRoadSignpost{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceManeuver::InstructionText() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceManeuver)->get_InstructionText(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Devices::Geolocation::Geopoint) consume_Windows_Services_Maps_Guidance_IGuidanceMapMatchedCoordinate::Location() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceMapMatchedCoordinate)->get_Location(&value)); return winrt::Windows::Devices::Geolocation::Geopoint{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(double) consume_Windows_Services_Maps_Guidance_IGuidanceMapMatchedCoordinate::CurrentHeading() const { double value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceMapMatchedCoordinate)->get_CurrentHeading(&value)); return value; } template WINRT_IMPL_AUTO(double) consume_Windows_Services_Maps_Guidance_IGuidanceMapMatchedCoordinate::CurrentSpeed() const { double value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceMapMatchedCoordinate)->get_CurrentSpeed(&value)); return value; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceMapMatchedCoordinate::IsOnStreet() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceMapMatchedCoordinate)->get_IsOnStreet(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceRoadSegment) consume_Windows_Services_Maps_Guidance_IGuidanceMapMatchedCoordinate::Road() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceMapMatchedCoordinate)->get_Road(&value)); return winrt::Windows::Services::Maps::Guidance::GuidanceRoadSegment{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::StartNavigating(winrt::Windows::Services::Maps::Guidance::GuidanceRoute const& route) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->StartNavigating(*(void**)(&route))); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::StartSimulating(winrt::Windows::Services::Maps::Guidance::GuidanceRoute const& route, int32_t speedInMetersPerSecond) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->StartSimulating(*(void**)(&route), speedInMetersPerSecond)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::StartTracking() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->StartTracking()); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Pause() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->Pause()); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Resume() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->Resume()); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Stop() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->Stop()); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::RepeatLastAudioNotification() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->RepeatLastAudioNotification()); } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceAudioMeasurementSystem) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::AudioMeasurementSystem() const { winrt::Windows::Services::Maps::Guidance::GuidanceAudioMeasurementSystem value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->get_AudioMeasurementSystem(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::AudioMeasurementSystem(winrt::Windows::Services::Maps::Guidance::GuidanceAudioMeasurementSystem const& value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->put_AudioMeasurementSystem(static_cast(value))); } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceAudioNotifications) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::AudioNotifications() const { winrt::Windows::Services::Maps::Guidance::GuidanceAudioNotifications value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->get_AudioNotifications(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::AudioNotifications(winrt::Windows::Services::Maps::Guidance::GuidanceAudioNotifications const& value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->put_AudioNotifications(static_cast(value))); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::GuidanceUpdated(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_GuidanceUpdated(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::GuidanceUpdated_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::GuidanceUpdated(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, GuidanceUpdated(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::GuidanceUpdated(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_GuidanceUpdated(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::DestinationReached(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_DestinationReached(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::DestinationReached_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::DestinationReached(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, DestinationReached(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::DestinationReached(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_DestinationReached(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouting(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_Rerouting(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouting_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouting(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, Rerouting(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouting(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_Rerouting(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouted(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_Rerouted(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouted_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, Rerouted(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::Rerouted(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_Rerouted(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::RerouteFailed(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_RerouteFailed(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::RerouteFailed_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::RerouteFailed(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, RerouteFailed(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::RerouteFailed(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_RerouteFailed(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationLost(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_UserLocationLost(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationLost_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationLost(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, UserLocationLost(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationLost(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_UserLocationLost(impl::bind_in(token)); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationRestored(winrt::Windows::Foundation::TypedEventHandler const& handler) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->add_UserLocationRestored(*(void**)(&handler), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationRestored_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationRestored(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const { return impl::make_event_revoker(this, UserLocationRestored(handler)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UserLocationRestored(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->remove_UserLocationRestored(impl::bind_in(token)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::SetGuidanceVoice(int32_t voiceId, param::hstring const& voiceFolder) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->SetGuidanceVoice(voiceId, *(void**)(&voiceFolder))); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UpdateUserLocation(winrt::Windows::Devices::Geolocation::Geocoordinate const& userLocation) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->UpdateUserLocation(*(void**)(&userLocation))); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator::UpdateUserLocation(winrt::Windows::Devices::Geolocation::Geocoordinate const& userLocation, winrt::Windows::Devices::Geolocation::BasicGeoposition const& positionOverride) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator)->UpdateUserLocationWithPositionOverride(*(void**)(&userLocation), impl::bind_in(positionOverride))); } template WINRT_IMPL_AUTO(winrt::event_token) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::AudioNotificationRequested(winrt::Windows::Foundation::TypedEventHandler const& value) const { winrt::event_token token{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator2)->add_AudioNotificationRequested(*(void**)(&value), put_abi(token))); return token; } template typename consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::AudioNotificationRequested_revoker consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::AudioNotificationRequested(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& value) const { return impl::make_event_revoker(this, AudioNotificationRequested(value)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::AudioNotificationRequested(winrt::event_token const& token) const noexcept { WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator2)->remove_AudioNotificationRequested(impl::bind_in(token)); } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::IsGuidanceAudioMuted() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator2)->get_IsGuidanceAudioMuted(&value)); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceNavigator2::IsGuidanceAudioMuted(bool value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigator2)->put_IsGuidanceAudioMuted(value)); } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceNavigator) consume_Windows_Services_Maps_Guidance_IGuidanceNavigatorStatics::GetCurrent() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigatorStatics)->GetCurrent(&result)); return winrt::Windows::Services::Maps::Guidance::GuidanceNavigator{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceNavigatorStatics2::UseAppProvidedVoice() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceNavigatorStatics2)->get_UseAppProvidedVoice(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceRoute) consume_Windows_Services_Maps_Guidance_IGuidanceReroutedEventArgs::Route() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceReroutedEventArgs)->get_Route(&result)); return winrt::Windows::Services::Maps::Guidance::GuidanceRoute{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::RoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_RoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::ShortRoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_ShortRoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(double) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::SpeedLimit() const { double value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_SpeedLimit(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::TimeSpan) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::TravelTime() const { winrt::Windows::Foundation::TimeSpan value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_TravelTime(put_abi(value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Devices::Geolocation::Geopath) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::Path() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_Path(&value)); return winrt::Windows::Devices::Geolocation::Geopath{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::Id() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_Id(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::IsHighway() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_IsHighway(&value)); return value; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::IsTunnel() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_IsTunnel(&value)); return value; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment::IsTollRoad() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment)->get_IsTollRoad(&value)); return value; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSegment2::IsScenic() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSegment2)->get_IsScenic(&value)); return value; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSignpost::ExitNumber() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSignpost)->get_ExitNumber(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSignpost::Exit() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSignpost)->get_Exit(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::UI::Color) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSignpost::BackgroundColor() const { winrt::Windows::UI::Color value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSignpost)->get_BackgroundColor(put_abi(value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::UI::Color) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSignpost::ForegroundColor() const { winrt::Windows::UI::Color value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSignpost)->get_ForegroundColor(put_abi(value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::Collections::IVectorView) consume_Windows_Services_Maps_Guidance_IGuidanceRoadSignpost::ExitDirections() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoadSignpost)->get_ExitDirections(&value)); return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::TimeSpan) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::Duration() const { winrt::Windows::Foundation::TimeSpan value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_Duration(put_abi(value))); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::Distance() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_Distance(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::Collections::IVectorView) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::Maneuvers() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_Maneuvers(&value)); return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Devices::Geolocation::GeoboundingBox) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::BoundingBox() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_BoundingBox(&value)); return winrt::Windows::Devices::Geolocation::GeoboundingBox{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Devices::Geolocation::Geopath) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::Path() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_Path(&value)); return winrt::Windows::Devices::Geolocation::Geopath{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::Collections::IVectorView) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::RoadSegments() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->get_RoadSegments(&value)); return winrt::Windows::Foundation::Collections::IVectorView{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::MapRoute) consume_Windows_Services_Maps_Guidance_IGuidanceRoute::ConvertToMapRoute() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRoute)->ConvertToMapRoute(&result)); return winrt::Windows::Services::Maps::MapRoute{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceRouteStatics::CanCreateFromMapRoute(winrt::Windows::Services::Maps::MapRoute const& mapRoute) const { bool result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRouteStatics)->CanCreateFromMapRoute(*(void**)(&mapRoute), &result)); return result; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceRoute) consume_Windows_Services_Maps_Guidance_IGuidanceRouteStatics::TryCreateFromMapRoute(winrt::Windows::Services::Maps::MapRoute const& mapRoute) const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceRouteStatics)->TryCreateFromMapRoute(*(void**)(&mapRoute), &result)); return winrt::Windows::Services::Maps::Guidance::GuidanceRoute{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::Enabled() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->get_Enabled(&value)); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::Enabled(bool value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->put_Enabled(value)); } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::ClearLocalData() const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->ClearLocalData()); } template WINRT_IMPL_AUTO(double) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::SpeedTrigger() const { double value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->get_SpeedTrigger(&value)); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::SpeedTrigger(double value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->put_SpeedTrigger(value)); } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::UploadFrequency() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->get_UploadFrequency(&value)); return value; } template WINRT_IMPL_AUTO(void) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollector::UploadFrequency(int32_t value) const { check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollector)->put_UploadFrequency(value)); } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceTelemetryCollector) consume_Windows_Services_Maps_Guidance_IGuidanceTelemetryCollectorStatics::GetCurrent() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceTelemetryCollectorStatics)->GetCurrent(&result)); return winrt::Windows::Services::Maps::Guidance::GuidanceTelemetryCollector{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceMode) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::Mode() const { winrt::Windows::Services::Maps::Guidance::GuidanceMode value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_Mode(reinterpret_cast(&value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceManeuver) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::NextManeuver() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_NextManeuver(&value)); return winrt::Windows::Services::Maps::Guidance::GuidanceManeuver{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::NextManeuverDistance() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_NextManeuverDistance(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceManeuver) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::AfterNextManeuver() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_AfterNextManeuver(&value)); return winrt::Windows::Services::Maps::Guidance::GuidanceManeuver{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::AfterNextManeuverDistance() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_AfterNextManeuverDistance(&value)); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::DistanceToDestination() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_DistanceToDestination(&value)); return value; } template WINRT_IMPL_AUTO(int32_t) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::ElapsedDistance() const { int32_t value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_ElapsedDistance(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::TimeSpan) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::ElapsedTime() const { winrt::Windows::Foundation::TimeSpan value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_ElapsedTime(put_abi(value))); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::TimeSpan) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::TimeToDestination() const { winrt::Windows::Foundation::TimeSpan value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_TimeToDestination(put_abi(value))); return value; } template WINRT_IMPL_AUTO(hstring) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::RoadName() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_RoadName(&value)); return hstring{ value, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceRoute) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::Route() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_Route(&result)); return winrt::Windows::Services::Maps::Guidance::GuidanceRoute{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(winrt::Windows::Services::Maps::Guidance::GuidanceMapMatchedCoordinate) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::CurrentLocation() const { void* result{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_CurrentLocation(&result)); return winrt::Windows::Services::Maps::Guidance::GuidanceMapMatchedCoordinate{ result, take_ownership_from_abi }; } template WINRT_IMPL_AUTO(bool) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::IsNewManeuver() const { bool value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_IsNewManeuver(&value)); return value; } template WINRT_IMPL_AUTO(winrt::Windows::Foundation::Collections::IVectorView) consume_Windows_Services_Maps_Guidance_IGuidanceUpdatedEventArgs::LaneInfo() const { void* value{}; check_hresult(WINRT_IMPL_SHIM(winrt::Windows::Services::Maps::Guidance::IGuidanceUpdatedEventArgs)->get_LaneInfo(&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_AudioNotification(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AudioNotification()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AudioFilePaths(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().AudioFilePaths()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AudioText(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AudioText()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_LaneMarkers(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().LaneMarkers()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsOnRoute(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsOnRoute()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_StartLocation(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().StartLocation()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DistanceFromRouteStart(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DistanceFromRouteStart()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DistanceFromPreviousManeuver(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DistanceFromPreviousManeuver()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DepartureRoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DepartureRoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NextRoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NextRoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DepartureShortRoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DepartureShortRoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NextShortRoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NextShortRoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Kind(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Kind()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_StartAngle(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().StartAngle()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_EndAngle(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().EndAngle()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RoadSignpost(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RoadSignpost()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_InstructionText(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().InstructionText()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Location(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Location()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentHeading(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentHeading()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentSpeed(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().CurrentSpeed()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsOnStreet(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsOnStreet()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Road(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Road()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall StartNavigating(void* route) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StartNavigating(*reinterpret_cast(&route)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall StartSimulating(void* route, int32_t speedInMetersPerSecond) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StartSimulating(*reinterpret_cast(&route), speedInMetersPerSecond); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall StartTracking() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().StartTracking(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Pause() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Pause(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Resume() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Resume(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall Stop() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Stop(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall RepeatLastAudioNotification() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().RepeatLastAudioNotification(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AudioMeasurementSystem(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AudioMeasurementSystem()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AudioMeasurementSystem(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AudioMeasurementSystem(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AudioNotifications(uint32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AudioNotifications()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_AudioNotifications(uint32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().AudioNotifications(*reinterpret_cast(&value)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall add_GuidanceUpdated(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().GuidanceUpdated(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_GuidanceUpdated(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().GuidanceUpdated(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_DestinationReached(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().DestinationReached(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_DestinationReached(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().DestinationReached(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_Rerouting(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().Rerouting(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_Rerouting(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().Rerouting(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_Rerouted(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().Rerouted(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_Rerouted(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().Rerouted(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_RerouteFailed(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().RerouteFailed(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_RerouteFailed(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().RerouteFailed(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_UserLocationLost(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().UserLocationLost(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_UserLocationLost(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().UserLocationLost(*reinterpret_cast(&token)); return 0; } int32_t __stdcall add_UserLocationRestored(void* handler, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().UserLocationRestored(*reinterpret_cast const*>(&handler))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_UserLocationRestored(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().UserLocationRestored(*reinterpret_cast(&token)); return 0; } int32_t __stdcall SetGuidanceVoice(int32_t voiceId, void* voiceFolder) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SetGuidanceVoice(voiceId, *reinterpret_cast(&voiceFolder)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UpdateUserLocation(void* userLocation) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateUserLocation(*reinterpret_cast(&userLocation)); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall UpdateUserLocationWithPositionOverride(void* userLocation, struct struct_Windows_Devices_Geolocation_BasicGeoposition positionOverride) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UpdateUserLocation(*reinterpret_cast(&userLocation), *reinterpret_cast(&positionOverride)); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall add_AudioNotificationRequested(void* value, winrt::event_token* token) noexcept final try { zero_abi(token); typename D::abi_guard guard(this->shim()); *token = detach_from(this->shim().AudioNotificationRequested(*reinterpret_cast const*>(&value))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall remove_AudioNotificationRequested(winrt::event_token token) noexcept final { typename D::abi_guard guard(this->shim()); this->shim().AudioNotificationRequested(*reinterpret_cast(&token)); return 0; } int32_t __stdcall get_IsGuidanceAudioMuted(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsGuidanceAudioMuted()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_IsGuidanceAudioMuted(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().IsGuidanceAudioMuted(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetCurrent(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetCurrent()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_UseAppProvidedVoice(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UseAppProvidedVoice()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Route(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Route()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_RoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ShortRoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ShortRoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SpeedLimit(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SpeedLimit()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TravelTime(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TravelTime()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Path(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Path()); 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_IsHighway(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsHighway()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsTunnel(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsTunnel()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsTollRoad(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsTollRoad()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_IsScenic(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsScenic()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_ExitNumber(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ExitNumber()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Exit(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Exit()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BackgroundColor(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BackgroundColor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ForegroundColor(struct struct_Windows_UI_Color* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ForegroundColor()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ExitDirections(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().ExitDirections()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Duration(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Duration()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Distance(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Distance()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Maneuvers(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().Maneuvers()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_BoundingBox(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().BoundingBox()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Path(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Path()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RoadSegments(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().RoadSegments()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ConvertToMapRoute(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().ConvertToMapRoute()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall CanCreateFromMapRoute(void* mapRoute, bool* result) noexcept final try { typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CanCreateFromMapRoute(*reinterpret_cast(&mapRoute))); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall TryCreateFromMapRoute(void* mapRoute, void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().TryCreateFromMapRoute(*reinterpret_cast(&mapRoute))); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Enabled(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Enabled()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_Enabled(bool value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().Enabled(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall ClearLocalData() noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().ClearLocalData(); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_SpeedTrigger(double* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().SpeedTrigger()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_SpeedTrigger(double value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().SpeedTrigger(value); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_UploadFrequency(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().UploadFrequency()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall put_UploadFrequency(int32_t value) noexcept final try { typename D::abi_guard guard(this->shim()); this->shim().UploadFrequency(value); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall GetCurrent(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().GetCurrent()); return 0; } catch (...) { return to_hresult(); } }; #endif #ifndef WINRT_LEAN_AND_MEAN template struct produce : produce_base { int32_t __stdcall get_Mode(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().Mode()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NextManeuver(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NextManeuver()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_NextManeuverDistance(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().NextManeuverDistance()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AfterNextManeuver(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AfterNextManeuver()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_AfterNextManeuverDistance(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().AfterNextManeuverDistance()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_DistanceToDestination(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().DistanceToDestination()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ElapsedDistance(int32_t* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ElapsedDistance()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_ElapsedTime(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().ElapsedTime()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_TimeToDestination(int64_t* value) noexcept final try { zero_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().TimeToDestination()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_RoadName(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().RoadName()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_Route(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().Route()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_CurrentLocation(void** result) noexcept final try { clear_abi(result); typename D::abi_guard guard(this->shim()); *result = detach_from(this->shim().CurrentLocation()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_IsNewManeuver(bool* value) noexcept final try { typename D::abi_guard guard(this->shim()); *value = detach_from(this->shim().IsNewManeuver()); return 0; } catch (...) { return to_hresult(); } int32_t __stdcall get_LaneInfo(void** value) noexcept final try { clear_abi(value); typename D::abi_guard guard(this->shim()); *value = detach_from>(this->shim().LaneInfo()); return 0; } catch (...) { return to_hresult(); } }; #endif } WINRT_EXPORT namespace winrt::Windows::Services::Maps::Guidance { constexpr auto operator|(GuidanceAudioNotifications const left, GuidanceAudioNotifications const right) noexcept { return static_cast(impl::to_underlying_type(left) | impl::to_underlying_type(right)); } constexpr auto operator|=(GuidanceAudioNotifications& left, GuidanceAudioNotifications const right) noexcept { left = left | right; return left; } constexpr auto operator&(GuidanceAudioNotifications const left, GuidanceAudioNotifications const right) noexcept { return static_cast(impl::to_underlying_type(left) & impl::to_underlying_type(right)); } constexpr auto operator&=(GuidanceAudioNotifications& left, GuidanceAudioNotifications const right) noexcept { left = left & right; return left; } constexpr auto operator~(GuidanceAudioNotifications const value) noexcept { return static_cast(~impl::to_underlying_type(value)); } constexpr auto operator^(GuidanceAudioNotifications const left, GuidanceAudioNotifications const right) noexcept { return static_cast(impl::to_underlying_type(left) ^ impl::to_underlying_type(right)); } constexpr auto operator^=(GuidanceAudioNotifications& left, GuidanceAudioNotifications const right) noexcept { left = left ^ right; return left; } constexpr auto operator|(GuidanceLaneMarkers const left, GuidanceLaneMarkers const right) noexcept { return static_cast(impl::to_underlying_type(left) | impl::to_underlying_type(right)); } constexpr auto operator|=(GuidanceLaneMarkers& left, GuidanceLaneMarkers const right) noexcept { left = left | right; return left; } constexpr auto operator&(GuidanceLaneMarkers const left, GuidanceLaneMarkers const right) noexcept { return static_cast(impl::to_underlying_type(left) & impl::to_underlying_type(right)); } constexpr auto operator&=(GuidanceLaneMarkers& left, GuidanceLaneMarkers const right) noexcept { left = left & right; return left; } constexpr auto operator~(GuidanceLaneMarkers const value) noexcept { return static_cast(~impl::to_underlying_type(value)); } constexpr auto operator^(GuidanceLaneMarkers const left, GuidanceLaneMarkers const right) noexcept { return static_cast(impl::to_underlying_type(left) ^ impl::to_underlying_type(right)); } constexpr auto operator^=(GuidanceLaneMarkers& left, GuidanceLaneMarkers const right) noexcept { left = left ^ right; return left; } inline auto GuidanceNavigator::GetCurrent() { return impl::call_factory_cast([](IGuidanceNavigatorStatics const& f) { return f.GetCurrent(); }); } inline auto GuidanceNavigator::UseAppProvidedVoice() { return impl::call_factory_cast([](IGuidanceNavigatorStatics2 const& f) { return f.UseAppProvidedVoice(); }); } inline auto GuidanceRoute::CanCreateFromMapRoute(winrt::Windows::Services::Maps::MapRoute const& mapRoute) { return impl::call_factory([&](IGuidanceRouteStatics const& f) { return f.CanCreateFromMapRoute(mapRoute); }); } inline auto GuidanceRoute::TryCreateFromMapRoute(winrt::Windows::Services::Maps::MapRoute const& mapRoute) { return impl::call_factory([&](IGuidanceRouteStatics const& f) { return f.TryCreateFromMapRoute(mapRoute); }); } inline auto GuidanceTelemetryCollector::GetCurrent() { return impl::call_factory_cast([](IGuidanceTelemetryCollectorStatics const& f) { return f.GetCurrent(); }); } } 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 {}; #endif #ifdef __cpp_lib_format #endif } #endif