From 2cd827a4fd5b87e9e41178c9369edd38d3e786a2 Mon Sep 17 00:00:00 2001 From: Joakim Kilby Date: Thu, 25 Jun 2015 11:28:18 +0200 Subject: [PATCH] added method to clear keyframes and call to that method when hostship is switched --- include/openspace/interaction/interactionhandler.h | 1 + src/interaction/interactionhandler.cpp | 5 +++++ src/network/parallelconnection.cpp | 3 +++ 3 files changed, 9 insertions(+) diff --git a/include/openspace/interaction/interactionhandler.h b/include/openspace/interaction/interactionhandler.h index ad1b828788..19ed741437 100644 --- a/include/openspace/interaction/interactionhandler.h +++ b/include/openspace/interaction/interactionhandler.h @@ -141,6 +141,7 @@ public: bool invertRotation() const; void addKeyframe(const network::StreamDataKeyframe &kf); + void clearKeyframes(); /** * Returns the Lua library that contains all Lua functions available to affect the diff --git a/src/interaction/interactionhandler.cpp b/src/interaction/interactionhandler.cpp index 3b1e2cbcb3..1dfaabe7ae 100644 --- a/src/interaction/interactionhandler.cpp +++ b/src/interaction/interactionhandler.cpp @@ -972,6 +972,11 @@ void InteractionHandler::addKeyframe(const network::StreamDataKeyframe &kf){ _keyframeMutex.unlock(); } +void InteractionHandler::clearKeyframes(){ + _keyframeMutex.lock(); + _keyframes.clear(); + _keyframeMutex.unlock(); +} } // namespace interaction //>>>>>>> feature/interactionhandler } // namespace openspace diff --git a/src/network/parallelconnection.cpp b/src/network/parallelconnection.cpp index 8eaf5eaa6a..ac05edfeb3 100644 --- a/src/network/parallelconnection.cpp +++ b/src/network/parallelconnection.cpp @@ -402,6 +402,9 @@ namespace openspace { //we were not broadcasting so nothing to do } + //clear buffered any keyframes + OsEng.interactionHandler()->clearKeyframes(); + //request init package from the host int size = headerSize(); std::vector buffer;