From f30ec409bb382d14982fb1fad7147ff080d70911 Mon Sep 17 00:00:00 2001 From: Edouard DUPIN Date: Mon, 2 Oct 2017 23:41:19 +0200 Subject: [PATCH] [DEV] add get component --- ege/Entity.cpp | 12 ++++++++++++ ege/Entity.hpp | 1 + 2 files changed, 13 insertions(+) diff --git a/ege/Entity.cpp b/ege/Entity.cpp index aff5133..9f934e0 100644 --- a/ege/Entity.cpp +++ b/ege/Entity.cpp @@ -151,6 +151,18 @@ void ege::Entity::rmComponent(const etk::String& _type) { } } +ememory::SharedPtr ege::Entity::getComponent(const etk::String& _type) { + // check if not exist + for (size_t iii=0; iiigetType() == _type) { + return m_component[iii]; + } + } + return nullptr; +} diff --git a/ege/Entity.hpp b/ege/Entity.hpp index ae13b9e..db7b289 100644 --- a/ege/Entity.hpp +++ b/ege/Entity.hpp @@ -46,6 +46,7 @@ namespace ege { void addComponent(const ememory::SharedPtr& _ref); void rmComponent(const ememory::SharedPtr& _ref); void rmComponent(const etk::String& _type); + ememory::SharedPtr getComponent(const etk::String& _type); /** * @brief get the Entity Type description string.