mirror of
https://github.com/RetroShare/RetroShare.git
synced 2024-10-01 02:35:48 -04:00
53 lines
1.7 KiB
C
53 lines
1.7 KiB
C
|
#ifndef P3POSTED_H
|
||
|
#define P3POSTED_H
|
||
|
|
||
|
#include "retroshare/rsposted.h"
|
||
|
#include "gxs/rsgenexchange.h"
|
||
|
|
||
|
class p3Posted : public RsGenExchange, public RsPosted
|
||
|
{
|
||
|
public:
|
||
|
p3Posted(RsGeneralDataService* gds, RsNetworkExchangeService* nes);
|
||
|
|
||
|
protected:
|
||
|
|
||
|
/*!
|
||
|
* This confirms this class as an abstract one that \n
|
||
|
* should not be instantiated \n
|
||
|
* The deriving class should implement this function \n
|
||
|
* as it is called by the backend GXS system to \n
|
||
|
* update client of changes which should \n
|
||
|
* instigate client to retrieve new content from the system
|
||
|
* @param changes the changes that have occured to data held by this service
|
||
|
*/
|
||
|
void notifyChanges(std::vector<RsGxsNotify*>& changes) ;
|
||
|
|
||
|
public:
|
||
|
|
||
|
bool getGroup(const uint32_t &token, RsPostedGroup &group);
|
||
|
bool getPost(const uint32_t &token, RsPostedPost &post) ;
|
||
|
bool getComment(const uint32_t &token, RsPostedComment &comment) ;
|
||
|
|
||
|
bool submitGroup(uint32_t &token, RsPostedGroup &group);
|
||
|
bool submitPost(uint32_t &token, RsPostedPost &post);
|
||
|
bool submitVote(uint32_t &token, RsPostedVote &vote);
|
||
|
bool submitComment(uint32_t &token, RsPostedComment &comment) ;
|
||
|
|
||
|
// Special Ranking Request.
|
||
|
bool requestRanking(uint32_t &token, RsGxsGroupId groupId) ;
|
||
|
bool getRankedPost(const uint32_t &token, RsPostedPost &post) ;
|
||
|
|
||
|
bool extractPostedCache() ;
|
||
|
|
||
|
|
||
|
// Control Ranking Calculations.
|
||
|
bool setViewMode(uint32_t mode);
|
||
|
bool setViewPeriod(uint32_t period);
|
||
|
bool setViewRange(uint32_t first, uint32_t count);
|
||
|
|
||
|
// exposed for testing...
|
||
|
float calcPostScore(uint32_t& token, const RsGxsMessageId);
|
||
|
};
|
||
|
|
||
|
#endif // P3POSTED_H
|