23 #if _RAKNET_SUPPORT_CloudServer==1
25 #ifndef __CLOUD_SERVER_H
26 #define __CLOUD_SERVER_H
37 #define CLOUD_SERVER_DATA_STACK_SIZE 32
42 class RakPeerInterface;
88 void SetMaxUploadBytesPerClient(
uint64_t bytes);
93 void SetMaxBytesPerDownload(
uint64_t bytes);
104 void RemoveServer(
RakNetGUID systemIdentifier);
117 void ForceExternalSystemAddress(
SystemAddress forcedAddress);
131 void RemoveAllQueryFilters(
void);
134 virtual void Update(
void);
137 virtual void OnRakPeerShutdown(
void);
140 virtual void OnPostRequest(
Packet *packet);
141 virtual void OnReleaseRequest(
Packet *packet);
142 virtual void OnGetRequest(
Packet *packet);
143 virtual void OnUnsubscribeRequest(
Packet *packet);
144 virtual void OnServerToServerGetRequest(
Packet *packet);
145 virtual void OnServerToServerGetResponse(
Packet *packet);
156 bool IsUnused(
void)
const {
return isUploaded==
false && specificSubscribers.Size()==0;}
187 bool IsUnused(
void)
const {
return keyData.Size()==0 && nonSpecificSubscribers.Size()==0;}
192 index = nonSpecificSubscribers.GetIndexFromKey(g, &objectExists);
196 nonSpecificSubscribers.RemoveAtIndex(index);
226 bool IsUnused(
void)
const {
return uploadedKeys.Size()==0 && subscribedKeys.Size()==0;}
235 void ReleaseSystem(
RakNetGUID clientAddress );
242 void NotifyServerSubscribersOfDataChange(
CloudData *cloudData,
CloudKey &key,
bool wasUpdated );
277 void Serialize(
bool writeToBitstream,
BitStream *bitStream);
284 bool AllRemoteServersHaveResponded(
void)
const;
303 void ProcessAndTransmitGetRequest(
GetRequest *getRequest);
305 void ProcessCloudQueryWithAddresses(
311 void SendUploadedAndSubscribedKeysToServer(
RakNetGUID systemAddress );
312 void SendUploadedKeyToServers(
CloudKey &cloudKey );
313 void SendSubscribedKeyToServers(
CloudKey &cloudKey );
314 void RemoveUploadedKeyFromServers(
CloudKey &cloudKey );
315 void RemoveSubscribedKeyFromServers(
CloudKey &cloudKey );
317 void OnSendUploadedAndSubscribedKeysToServer(
Packet *packet );
318 void OnSendUploadedKeyToServers(
Packet *packet );
319 void OnSendSubscribedKeyToServers(
Packet *packet );
320 void OnRemoveUploadedKeyFromServers(
Packet *packet );
321 void OnRemoveSubscribedKeyFromServers(
Packet *packet );
322 void OnServerDataChanged(
Packet *packet );
324 void GetServersWithUploadedKeys(
388 #endif // _RAKNET_SUPPORT_*