2012-12-18 22:25:00 +00:00
|
|
|
#ifndef RSGXSUPDATEBROADCAST_H
|
|
|
|
#define RSGXSUPDATEBROADCAST_H
|
|
|
|
|
|
|
|
#include <QObject>
|
|
|
|
|
2013-07-14 18:48:40 +00:00
|
|
|
#include <retroshare/rsgxsifacetypes.h>
|
|
|
|
|
|
|
|
class RsGxsIfaceHelper;
|
2015-03-20 10:39:17 +00:00
|
|
|
class RsGxsChanges;
|
2012-12-18 22:25:00 +00:00
|
|
|
|
2018-06-23 22:25:36 +02:00
|
|
|
typedef uint32_t TurtleRequestId ;
|
|
|
|
|
2012-12-18 22:25:00 +00:00
|
|
|
class RsGxsUpdateBroadcast : public QObject
|
|
|
|
{
|
2013-07-14 18:48:40 +00:00
|
|
|
Q_OBJECT
|
|
|
|
|
2012-12-18 22:25:00 +00:00
|
|
|
public:
|
2013-07-14 18:48:40 +00:00
|
|
|
static void cleanup();
|
2012-12-18 22:25:00 +00:00
|
|
|
|
2013-07-14 18:48:40 +00:00
|
|
|
static RsGxsUpdateBroadcast *get(RsGxsIfaceHelper* ifaceImpl);
|
2012-12-18 22:25:00 +00:00
|
|
|
|
|
|
|
signals:
|
2013-07-14 18:48:40 +00:00
|
|
|
void changed();
|
2018-06-21 15:46:59 +02:00
|
|
|
void msgsChanged(const std::map<RsGxsGroupId, std::set<RsGxsMessageId> >& msgIds, const std::map<RsGxsGroupId, std::set<RsGxsMessageId> >& msgIdsMeta);
|
2014-07-04 21:51:17 +00:00
|
|
|
void grpsChanged(const std::list<RsGxsGroupId>& grpIds, const std::list<RsGxsGroupId>& grpIdsMeta);
|
2018-06-23 22:25:36 +02:00
|
|
|
void distantSearchResultsChanged(const std::list<TurtleRequestId>& reqs);
|
2012-12-18 22:25:00 +00:00
|
|
|
|
2013-07-14 18:48:40 +00:00
|
|
|
private slots:
|
2015-03-20 10:39:17 +00:00
|
|
|
void onChangesReceived(const RsGxsChanges& changes);
|
2012-12-18 22:25:00 +00:00
|
|
|
|
|
|
|
private:
|
2013-07-14 18:48:40 +00:00
|
|
|
explicit RsGxsUpdateBroadcast(RsGxsIfaceHelper* ifaceImpl);
|
2012-12-18 22:25:00 +00:00
|
|
|
|
2013-07-14 18:48:40 +00:00
|
|
|
private:
|
|
|
|
RsGxsIfaceHelper* mIfaceImpl;
|
2012-12-18 22:25:00 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif // RSGXSUPDATEBROADCAST_H
|