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