#include <QObject>
#include <QString>
#include <QHash>
-#include <QList>
-#include <QPointer>
+#include <QVector>
namespace eVaf {
uint mNextEventId;
/// List of registered events
- QHash<uint, QString> mEvents;
+ typedef QHash<uint, QString> Events;
+ Events mEvents;
/// List of subscribers
- QHash<uint, QList<QPointer<QObject> > > mSubscribers;
+ typedef QHash<uint, QVector<QObject *> > Subscribers;
+ Subscribers mSubscribers;
+
+
+private slots:
+
+ /// One of the subscribers is destroyed
+ /// We need to remove it from the list of subscribers.
+ void subscriberDestroyed(QObject * obj = 0);
};