summaryrefslogtreecommitdiff
path: root/src/game-server/entity.cpp
diff options
context:
space:
mode:
authorThorbjørn Lindeijer <thorbjorn@lindeijer.nl>2012-05-27 23:26:19 +0200
committerThorbjørn Lindeijer <thorbjorn@lindeijer.nl>2013-01-09 17:12:15 +0100
commit0b339e547b77f80d6e81313bfb38249ce8995553 (patch)
treef22fee0142f72042430ace070a6e6ef4493e7c39 /src/game-server/entity.cpp
parent16074a7c2c8197a061281a6880ddbc3967d8ea0c (diff)
downloadmanaserv-0b339e547b77f80d6e81313bfb38249ce8995553.tar.gz
manaserv-0b339e547b77f80d6e81313bfb38249ce8995553.tar.bz2
manaserv-0b339e547b77f80d6e81313bfb38249ce8995553.tar.xz
manaserv-0b339e547b77f80d6e81313bfb38249ce8995553.zip
Replaced EventListener with signals based on libsigc++
This replaces the rather hard to understand event dispatcher with a probably even harder to understand templated library, but fortunately we can rely on the available documentation. Hopefully it will also help with the readability of our code and with adding additional signals to other classes. Added libsigc++ to README and Travis CI configuration. Reviewed-by: Erik Schilling
Diffstat (limited to 'src/game-server/entity.cpp')
-rw-r--r--src/game-server/entity.cpp47
1 files changed, 0 insertions, 47 deletions
diff --git a/src/game-server/entity.cpp b/src/game-server/entity.cpp
index 671ef5e6..6cb61e58 100644
--- a/src/game-server/entity.cpp
+++ b/src/game-server/entity.cpp
@@ -18,51 +18,4 @@
* along with The Mana Server. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <cassert>
-
#include "game-server/entity.h"
-
-#include "game-server/eventlistener.h"
-
-Entity::~Entity()
-{
- /* As another object will stop listening and call removeListener when it is
- deleted, the following assertion ensures that all the calls to
- removeListener have been performed will this object was still alive. It
- is not strictly necessary, as there are cases where no removal is
- performed (e.g. ~SpawnArea). But this is rather exceptional, so keep the
- assertion to catch all the other forgotten calls to removeListener. */
- assert(mListeners.empty());
-}
-
-void Entity::addListener(const EventListener *l)
-{
- mListeners.insert(l);
-}
-
-void Entity::removeListener(const EventListener *l)
-{
- mListeners.erase(l);
-}
-
-void Entity::inserted()
-{
- for (Listeners::iterator i = mListeners.begin(),
- i_end = mListeners.end(); i != i_end;)
- {
- const EventListener &l = **i;
- ++i; // In case the listener removes itself from the list on the fly.
- if (l.dispatch->inserted) l.dispatch->inserted(&l, this);
- }
-}
-
-void Entity::removed()
-{
- for (Listeners::iterator i = mListeners.begin(),
- i_end = mListeners.end(); i != i_end;)
- {
- const EventListener &l = **i;
- ++i; // In case the listener removes itself from the list on the fly.
- if (l.dispatch->removed) l.dispatch->removed(&l, this);
- }
-}