#include <QEvent>
#include <QSet>
+#include <functional>
+
#include "protocol.h"
struct QMetaObject;
void dumpProxyStats();
void dumpSyncMap(SyncableObject *object);
+ /**@{*/
/**
* This method allows to send a signal only to a limited set of peers
- * @param peerIds A list of peers that should receive it
+ * @param peers A list of peers that should receive it
* @param closure Code you want to execute within of that restricted environment
*/
void restrictTargetPeers(QSet<Peer*> peers, std::function<void()> closure);
#if QT_VERSION >= QT_VERSION_CHECK(5, 0, 0)
#ifdef Q_COMPILER_INITIALIZER_LISTS
void restrictTargetPeers(std::initializer_list<Peer*> peers, std::function<void()> closure) {
- restrictTargetPeers(QSet(peers), std::move(closure));
+ restrictTargetPeers(QSet<Peer*>(peers), std::move(closure));
}
#endif
#endif
+ /**}@*/
- inline int peerCount() const { return _peers.size(); }
+ inline int peerCount() const { return _peerMap.size(); }
QVariantList peerData();
Peer *peerById(int peerId);
static void disconnectDevice(QIODevice *dev, const QString &reason = QString());
- QSet<Peer *> _peers;
QHash<int, Peer*> _peerMap;
// containg a list of argtypes for fast access
QSet<Peer *> _restrictedTargets;
bool _restrictMessageTarget = false;
- Peer *_sourcePeer;
+ Peer *_sourcePeer = nullptr;
friend class SignalRelay;
friend class SyncableObject;