Changeset 2317
- Timestamp:
- Dec 3, 2008, 2:45:29 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/network/src/network/TrafficControl.cc
r2276 r2317 45 45 assert(instance_=0); 46 46 instance_=this; 47 clientListPerm_=new std::map<unsigned int,std::map<unsigned int, unsigned int>>;47 clientListPerm_=new std::map<unsigned int,std::map<unsigned int, objInfo>>; 48 48 referenceList_=new std::map<unsigned int, Synchronisable*>; 49 49 } … … 197 197 sort(copiedvector.begin(),copiedvector.end(),priodiffer); 198 198 //swappen aufgrund von creator oder ganz rausnehmen!? 199 199 for(itvec = copiedVector.begin(); itvec < copiedVector.end(); itvec++) 200 { 201 itproc = listToProcess_->find(itvec->objID); 202 if(itproc->second.objCreatorID) 203 { 204 //vor dem child in copiedvector einfügen, wie? 205 copiedVector.insert(itproc->second.objCreatorID); 206 } 207 else continue; 208 } 200 209 //end of sorting 201 return evaluatedList_; 210 //now the cutting, work the same obj out in processobjectlist and copiedvector, compression rate muss noch festgelegt werden. 211 cut(copiedVector,compressionRate-1); 212 //diese Funktion updateClientList muss noch gemacht werden 213 updateClientListTemp(copiedVector); 214 //end of sorting 215 } 216 217 TrafficControl::processAck(unsigned int clientID, unsigned int gamestateID) 218 { 219 map<unsigned int,std::map<unsigned int, objInfo>>::iterator itperm; 220 map<unsigned int, std::map<unsigned int, unsigned int>>::iterator ittemp; 221 map<unsigned int, unsigned int>::iterator ittempgs; 222 vector<obj>::iterator itvec; 223 //put temporarylist infos into permanentlist infos 224 ittemp = clientListTemp_->find(clientID); 225 assert(ittemp != clientListTemp_.end() ); 226 ittempgs = (*ittemp).find(gamestateID); 227 assert( ittempgs != (*ittemp).end() ); 228 for(itvec = *ittempgs.begin(); itvec = *ittempgs.end(); itvec++) 229 { 230 if(itperm = (*clientListPerm_).find(itvec.objID)) 231 { 232 itperm = (*clientListPerm_).find(itvec.objID); 233 if(gamestateID>itperm.second.objCurGS) 234 { 235 itperm.second.objCurGS = gamestateID; 236 } 237 else continue; 238 } 239 else 240 { 241 objInfo objinf = new objInfo; 242 objinf.objCurGS = gamestateID; 243 insertinClientListPerm(itvec.objID, objinf); 244 } 245 //entferne objekt aus temporärer liste 246 ittempgs.erase(itvec); 247 } 248 202 249 } 203 250
Note: See TracChangeset
for help on using the changeset viewer.