diff --git a/Source/Scene/imstkScene.cpp b/Source/Scene/imstkScene.cpp index 631e164bf8d33e46ce264e44235b8af06c3e2005..fae6231a7b956ae1af67ab0d384ae98617f3f5d0 100644 --- a/Source/Scene/imstkScene.cpp +++ b/Source/Scene/imstkScene.cpp @@ -362,8 +362,9 @@ Scene::removeLight(const std::string& lightName) std::string Scene::getCameraName(const std::shared_ptr<Camera> cam) const { + using MapType = std::unordered_map<std::string, std::shared_ptr<Camera>>; auto i = std::find_if(m_cameras.begin(), m_cameras.end(), - [&cam](const NamedMap<Camera>::value_type& j) { return j.second == cam; }); + [&cam](const MapType::value_type& j) { return j.second == cam; }); if (i != m_cameras.end()) { return i->first; diff --git a/Source/Scene/imstkScene.h b/Source/Scene/imstkScene.h index 96d99cc031bc948c2287675e11a407fd49a4f78f..cd6377feedb25a4a93d0c7a4c3a5a6539f17953a 100644 --- a/Source/Scene/imstkScene.h +++ b/Source/Scene/imstkScene.h @@ -78,10 +78,10 @@ struct SceneConfig /// class Scene : public EventObject { -template<class T> -using NamedMap = std::unordered_map<std::string, std::shared_ptr<T>>; - public: + template<class T> + using NamedMap = std::unordered_map<std::string, std::shared_ptr<T>>; + Scene(const std::string& name, std::shared_ptr<SceneConfig> config = std::make_shared<SceneConfig>()); virtual ~Scene() override = default; @@ -185,7 +185,8 @@ public: /// /// \brief Get and unordered map of cameras with names /// - const NamedMap<Camera>& getCameras() const { return m_cameras; } + const std::unordered_map<std::string, std::shared_ptr<Camera>>& + getCameras() const { return m_cameras; } /// /// \brief Add light from the scene @@ -288,10 +289,10 @@ protected: std::string m_name; ///> Name of the scene std::unordered_set<std::shared_ptr<SceneObject>> m_sceneObjects; - NamedMap<Light> m_lightsMap; + std::unordered_map<std::string, std::shared_ptr<Light>> m_lightsMap; std::shared_ptr<IBLProbe> m_globalIBLProbe = nullptr; - NamedMap<Camera> m_cameras; + std::unordered_map<std::string, std::shared_ptr<Camera>> m_cameras; std::shared_ptr<Camera> m_activeCamera; std::shared_ptr<CollisionGraph> m_collisionGraph;