Add handling for ArTrackingState changes in playback mode

This commit is contained in:
Georg Hagen
2024-07-12 19:45:18 +02:00
parent 515b3a6c73
commit 33bf5cd6e3
4 changed files with 18 additions and 1 deletions

View File

@@ -74,6 +74,11 @@ namespace OpenVulkano::AR::Playback
// Trigger events
OnNewFrameAvailable();
OnNewFrame(frame);
if (frame->GetTrackingState() != m_lastTrackingState)
{
m_lastTrackingState = frame->GetTrackingState();
OnTrackingStateChanged(m_lastTrackingState);
}
OnNewCameraTransformation(frame->GetCameraTransformation());
if (OnNewCameraViewMatrix.HasHandlers())
{

View File

@@ -46,6 +46,7 @@ class ArSessionPlayback final : public ArSession, public std::enable_shared_from
const std::string recordingPath;
const bool autoAdvance;
ArPlaybackReader playbackReader;
ArTrackingState m_lastTrackingState = ArTrackingState::UNKNOWN;
std::atomic_bool m_frameConsumed = true;
std::shared_ptr<ArFrame> m_nextFrame;