From 9df63151b1e9bced811f72e16de1b2998fa09631 Mon Sep 17 00:00:00 2001 From: Georg Hagen Date: Sun, 23 Jun 2024 23:29:12 +0200 Subject: [PATCH] Add OnStopped event to ArSession --- openVulkanoCpp/AR/ArSession.hpp | 1 + openVulkanoCpp/AR/Provider/ArKit/ArSessionArKitInternal.mm | 1 + openVulkanoCpp/AR/Provider/Network/ArSessionStream.cpp | 2 +- openVulkanoCpp/AR/Provider/Playback/ArSessionPlayback.cpp | 1 + 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/openVulkanoCpp/AR/ArSession.hpp b/openVulkanoCpp/AR/ArSession.hpp index 198a613..84a9161 100644 --- a/openVulkanoCpp/AR/ArSession.hpp +++ b/openVulkanoCpp/AR/ArSession.hpp @@ -210,6 +210,7 @@ namespace OpenVulkano::AR Event OnNewCameraViewMatrix; Event OnSessionFailed; Event<> OnAnchorsUpdated; + Event<> OnStopped; protected: bool running = false, paused = false, shouldAttemptRelocalization = false; diff --git a/openVulkanoCpp/AR/Provider/ArKit/ArSessionArKitInternal.mm b/openVulkanoCpp/AR/Provider/ArKit/ArSessionArKitInternal.mm index f2a8d8b..e75d73b 100644 --- a/openVulkanoCpp/AR/Provider/ArKit/ArSessionArKitInternal.mm +++ b/openVulkanoCpp/AR/Provider/ArKit/ArSessionArKitInternal.mm @@ -102,6 +102,7 @@ namespace OpenVulkano::AR::ArKit void ArSessionArKitInternal::Stop() { + OnStopped(); [m_arSession pause]; #if (__cplusplus >= 202002L) m_frame = nullptr; diff --git a/openVulkanoCpp/AR/Provider/Network/ArSessionStream.cpp b/openVulkanoCpp/AR/Provider/Network/ArSessionStream.cpp index 24adfdc..951fe3e 100644 --- a/openVulkanoCpp/AR/Provider/Network/ArSessionStream.cpp +++ b/openVulkanoCpp/AR/Provider/Network/ArSessionStream.cpp @@ -21,7 +21,7 @@ namespace OpenVulkano::AR::Network void ArSessionStream::Stop() { - + OnStopped(); } void ArSessionStream::Pause() diff --git a/openVulkanoCpp/AR/Provider/Playback/ArSessionPlayback.cpp b/openVulkanoCpp/AR/Provider/Playback/ArSessionPlayback.cpp index bfe6126..2e11eb2 100644 --- a/openVulkanoCpp/AR/Provider/Playback/ArSessionPlayback.cpp +++ b/openVulkanoCpp/AR/Provider/Playback/ArSessionPlayback.cpp @@ -35,6 +35,7 @@ namespace OpenVulkano::AR::Playback void ArSessionPlayback::Stop() { running = false; + OnStopped(); } void ArSessionPlayback::Pause()