diff --git a/modules/server/servermodule.cpp b/modules/server/servermodule.cpp index 7b2a261638..03789f5344 100644 --- a/modules/server/servermodule.cpp +++ b/modules/server/servermodule.cpp @@ -73,7 +73,7 @@ ServerInterface* ServerModule::serverInterfaceByIdentifier(const std::string& id } int ServerModule::skyBrowserUpdateTime() const { - return _skyBrowserUpdate; + return _skyBrowserUpdateTime; } void ServerModule::internalInitialize(const ghoul::Dictionary& configuration) { @@ -114,9 +114,8 @@ void ServerModule::internalInitialize(const ghoul::Dictionary& configuration) { _interfaces.push_back(std::move(serverInterface)); } } - // Ylva Selling, 2022-04-26 hasValue doesn't find the variable if (configuration.hasValue("SkyBrowserUpdateTime")) { - _skyBrowserUpdate = static_cast( + _skyBrowserUpdateTime = static_cast( configuration.value("SkyBrowserUpdateTime") ); } diff --git a/modules/server/servermodule.h b/modules/server/servermodule.h index c498123959..05f4686681 100644 --- a/modules/server/servermodule.h +++ b/modules/server/servermodule.h @@ -78,7 +78,7 @@ private: std::vector _connections; std::vector> _interfaces; properties::PropertyOwner _interfaceOwner; - int _skyBrowserUpdate = 100; + int _skyBrowserUpdateTime = 100; }; } // namespace openspace diff --git a/modules/server/src/topics/skybrowsertopic.cpp b/modules/server/src/topics/skybrowsertopic.cpp index cee983ca86..db375a037f 100644 --- a/modules/server/src/topics/skybrowsertopic.cpp +++ b/modules/server/src/topics/skybrowsertopic.cpp @@ -79,13 +79,15 @@ void SkyBrowserTopic::handleJson(const nlohmann::json& json) { } SkyBrowserModule* module = global::moduleEngine->module(); - _targetDataCallbackHandle = module->addPreSyncCallback([this]() { - std::chrono::system_clock::time_point now = std::chrono::system_clock::now(); - if (now - _lastUpdateTime > _skyBrowserUpdateTime) { - sendBrowserData(); - _lastUpdateTime = std::chrono::system_clock::now(); + _targetDataCallbackHandle = module->addPreSyncCallback( + [this]() { + std::chrono::system_clock::time_point now = std::chrono::system_clock::now(); + if (now - _lastUpdateTime > _skyBrowserUpdateTime) { + sendBrowserData(); + _lastUpdateTime = std::chrono::system_clock::now(); + } } - }); + ); } void SkyBrowserTopic::sendBrowserData() { @@ -94,9 +96,6 @@ void SkyBrowserTopic::sendBrowserData() { SkyBrowserModule* module = global::moduleEngine->module(); ghoul::Dictionary data; - // The current viewport data for OpenSpace - ghoul::Dictionary openSpace; - // Set general data data.setValue("selectedBrowserId", module->selectedBrowserId()); data.setValue("cameraInSolarSystem", module->isCameraInSolarSystem()); diff --git a/modules/skybrowser/include/browser.h b/modules/skybrowser/include/browser.h index 90898bad73..1fb230dbe5 100644 --- a/modules/skybrowser/include/browser.h +++ b/modules/skybrowser/include/browser.h @@ -89,6 +89,7 @@ protected: bool _isUrlDirty = false; bool _isDimensionsDirty = false; bool _shouldReload = false; + private: class RenderHandler : public WebRenderHandler { public: diff --git a/modules/skybrowser/skybrowsermodule.cpp b/modules/skybrowser/skybrowsermodule.cpp index fada01ae1b..7be4ed401e 100644 --- a/modules/skybrowser/skybrowsermodule.cpp +++ b/modules/skybrowser/skybrowsermodule.cpp @@ -193,7 +193,7 @@ SkyBrowserModule::SkyBrowserModule() // Trigger callbacks (should maybe have a check to see if update is needed) using K = CallbackHandle; using V = CallbackFunction; - for (const std::pair& it : _preSyncCallbacks) { + for (const std::pair& it : _preSyncCallbacks) { it.second(); // call function } }); diff --git a/modules/skybrowser/skybrowsermodule_lua.inl b/modules/skybrowser/skybrowsermodule_lua.inl index 882e4dfe3d..b6501bf635 100644 --- a/modules/skybrowser/skybrowsermodule_lua.inl +++ b/modules/skybrowser/skybrowsermodule_lua.inl @@ -452,10 +452,10 @@ namespace { "Transform = {" "Translation = {" "Type = 'StaticTranslation'," - "Position = {" - + std::to_string(galacticTarget.x) + ", " - + std::to_string(galacticTarget.y) + ", " - + std::to_string(galacticTarget.z) + ", " + "Position = {" + + std::to_string(galacticTarget.x) + ", " + + std::to_string(galacticTarget.y) + ", " + + std::to_string(galacticTarget.z) + ", " + "}," "}," "Rotation = {" @@ -653,9 +653,8 @@ namespace { * \param position Position of first copy, which depends on if RAE or Cartesian coordinates * are checked */ -[[codegen::luawrap]] void addRenderCopy(std::string identifier, - int numberOfCopies = 1, - glm::vec3 position = glm::vec3(2.1f, 0.f, 0.f)) +[[codegen::luawrap]] void addRenderCopy(std::string identifier, int numberOfCopies = 1, + glm::vec3 position = glm::vec3(2.1f, 0.f, 0.f)) { using namespace openspace; @@ -730,11 +729,14 @@ namespace { pair->setImageCollectionIsLoaded(true); // Add all selected images to WorldWide Telescope const std::deque& images = pair->selectedImages(); - std::for_each(images.rbegin(), images.rend(), [&](int index) { - const ImageData& image = module->getWwtDataHandler()->getImage(index); - // Index of image is used as layer ID as it is unique in the image data set - pair->browser()->addImageLayerToWwt(image.imageUrl, index); - }); + std::for_each( + images.rbegin(), images.rend(), + [&](int index) { + const ImageData& image = module->getWwtDataHandler()->getImage(index); + // Index of image is used as layer ID as it is unique in the image data set + pair->browser()->addImageLayerToWwt(image.imageUrl, index); + } + ); } } @@ -762,8 +764,9 @@ namespace { TargetBrowserPair* pair = module->getPair(identifier); glm::dvec2 equatorial = pair->targetDirectionEquatorial(); global::eventEngine->publishEvent( - equatorial.x, equatorial.y - ); + equatorial.x, + equatorial.y + ); } #include "skybrowsermodule_lua_codegen.cpp" diff --git a/modules/skybrowser/src/screenspaceskybrowser.cpp b/modules/skybrowser/src/screenspaceskybrowser.cpp index e724cc540b..3f02887728 100644 --- a/modules/skybrowser/src/screenspaceskybrowser.cpp +++ b/modules/skybrowser/src/screenspaceskybrowser.cpp @@ -123,20 +123,21 @@ ScreenSpaceSkyBrowser::ScreenSpaceSkyBrowser(const ghoul::Dictionary& dictionary } _scale = _size.y * 0.5f; - _useRadiusAzimuthElevation.onChange([this]() { - std::for_each( - _renderCopies.begin(), - _renderCopies.end(), - [this](std::unique_ptr& copy) { - if (_useRadiusAzimuthElevation) { - *copy = sphericalToRae(cartesianToSpherical(copy.get()->value())); + _useRadiusAzimuthElevation.onChange( + [this]() { + std::for_each( + _renderCopies.begin(), + _renderCopies.end(), + [this](std::unique_ptr& copy) { + if (_useRadiusAzimuthElevation) { + *copy = sphericalToRae(cartesianToSpherical(copy->value())); - } - else { - *copy = sphericalToCartesian(raeToSpherical(copy.get()->value())); - } + } + else { + *copy = sphericalToCartesian(raeToSpherical(copy->value())); + } + }); }); - }); } ScreenSpaceSkyBrowser::~ScreenSpaceSkyBrowser() { @@ -232,8 +233,8 @@ ScreenSpaceSkyBrowser::renderCopies() const _renderCopies.end(), [&](const std::unique_ptr& copy) { std::pair pair = { - copy.get()->identifier(), - glm::dvec3(copy.get()->value()) + copy->identifier(), + glm::dvec3(copy->value()) }; vec.push_back(pair); } @@ -267,7 +268,7 @@ void ScreenSpaceSkyBrowser::render() { // Render a copy that is not interactive for (const std::unique_ptr& copy : _renderCopies) { - glm::vec3 coordinates = copy.get()->value(); + glm::vec3 coordinates = copy->value(); if (_useRadiusAzimuthElevation) { coordinates = sphericalToCartesian(raeToSpherical(coordinates)); } diff --git a/modules/skybrowser/src/targetbrowserpair.cpp b/modules/skybrowser/src/targetbrowserpair.cpp index 96fcd58435..172fa6402c 100644 --- a/modules/skybrowser/src/targetbrowserpair.cpp +++ b/modules/skybrowser/src/targetbrowserpair.cpp @@ -296,7 +296,7 @@ void TargetBrowserPair::setBorderColor(const glm::ivec3& color) { void TargetBrowserPair::setScreenSpaceSize(const glm::vec2& dimensions) { _browser->setScreenSpaceSize(dimensions); - _targetRenderable->setRatio(dimensions.x/dimensions.y); + _targetRenderable->setRatio(dimensions.x / dimensions.y); } void TargetBrowserPair::setVerticalFovWithScroll(float scroll) { @@ -331,7 +331,7 @@ void TargetBrowserPair::startFading(float goal, float fadeTime) { _targetNode->identifier(), _browser->identifier(), goal, fadeTime ); - openspace::global::scriptEngine->queueScript( + global::scriptEngine->queueScript( script, scripting::ScriptEngine::RemoteScripting::Yes );