[Orxonox-commit 3060] r7755 - in code/branches/network4/src/libraries/network: . packet synchronisable
scheusso at orxonox.net
scheusso at orxonox.net
Sat Dec 11 16:12:21 CET 2010
Author: scheusso
Date: 2010-12-11 16:12:21 +0100 (Sat, 11 Dec 2010)
New Revision: 7755
Modified:
code/branches/network4/src/libraries/network/GamestateManager.cc
code/branches/network4/src/libraries/network/packet/Gamestate.cc
code/branches/network4/src/libraries/network/packet/Gamestate.h
code/branches/network4/src/libraries/network/synchronisable/Synchronisable.cc
Log:
build fix
Modified: code/branches/network4/src/libraries/network/GamestateManager.cc
===================================================================
--- code/branches/network4/src/libraries/network/GamestateManager.cc 2010-12-10 19:13:57 UTC (rev 7754)
+++ code/branches/network4/src/libraries/network/GamestateManager.cc 2010-12-11 15:12:21 UTC (rev 7755)
@@ -218,7 +218,7 @@
bool b = gs->compressData();
assert(b);
clock.capture();
- COUT(0) << "diff time: " << clock.getDeltaTime() << endl;
+ COUT(4) << "diff and compress time: " << clock.getDeltaTime() << endl;
// COUT(5) << "sending gamestate with id " << gs->getID();
// if(gamestate->isDiffed())
// COUT(5) << " and baseid " << gs->getBaseID() << endl;
Modified: code/branches/network4/src/libraries/network/packet/Gamestate.cc
===================================================================
--- code/branches/network4/src/libraries/network/packet/Gamestate.cc 2010-12-10 19:13:57 UTC (rev 7754)
+++ code/branches/network4/src/libraries/network/packet/Gamestate.cc 2010-12-11 15:12:21 UTC (rev 7755)
@@ -64,7 +64,7 @@
Gamestate::Gamestate():
- header_(0)
+ header_()
{
flags_ = flags_ | PACKET_FLAG_GAMESTATE;
}
@@ -175,7 +175,7 @@
assert(!header_.isCompressed());
uint8_t *mem=data_+GamestateHeader::getSize();
Synchronisable *s;
-
+
// update the data of the objects we received
while(mem < data_+GamestateHeader::getSize()+header_.getDataSize())
{
@@ -190,11 +190,13 @@
}
else
{
+// COUT(4) << "not creating object of classid " << objectheader.getClassID() << endl;
mem += objectheader.getDataSize() + ( objectheader.isDiffed() ? SynchronisableHeaderLight::getSize() : SynchronisableHeader::getSize() );
}
}
else
{
+// COUT(4) << "updating object of classid " << objectheader.getClassID() << endl;
bool b = s->updateData(mem, mode);
assert(b);
}
@@ -302,7 +304,7 @@
data_ = ndata;
header_.setCompSize( buffer );
header_.setCompressed( true );
- COUT(0) << "gamestate compress datasize: " << header_.getDataSize() << " compsize: " << header_.getCompSize() << std::endl;
+ COUT(4) << "gamestate compress datasize: " << header_.getDataSize() << " compsize: " << header_.getCompSize() << std::endl;
return true;
}
Modified: code/branches/network4/src/libraries/network/packet/Gamestate.h
===================================================================
--- code/branches/network4/src/libraries/network/packet/Gamestate.h 2010-12-10 19:13:57 UTC (rev 7754)
+++ code/branches/network4/src/libraries/network/packet/Gamestate.h 2010-12-11 15:12:21 UTC (rev 7755)
@@ -47,7 +47,7 @@
class _NetworkExport GamestateHeader{
public:
- GamestateHeader();
+ GamestateHeader(){ data_=0; }
GamestateHeader(uint8_t* data)
{ assert(data); data_ = data; *(uint32_t*)data_ = Type::Gamestate; }
/*GamestateHeader(uint8_t* data, GamestateHeader* h)
Modified: code/branches/network4/src/libraries/network/synchronisable/Synchronisable.cc
===================================================================
--- code/branches/network4/src/libraries/network/synchronisable/Synchronisable.cc 2010-12-10 19:13:57 UTC (rev 7754)
+++ code/branches/network4/src/libraries/network/synchronisable/Synchronisable.cc 2010-12-11 15:12:21 UTC (rev 7755)
@@ -221,11 +221,11 @@
* |totalsize,objectID_,classID_,var1,var2,string1_length,string1,var3,...|
* length of varx: size saved int syncvarlist
* @param mem pointer to allocated memory with enough size
- * @param sizes FIXME - add doc!
+ * @param sizes vector containing sizes of all objects in gamestate (to be appended)
* @param id gamestateid of the gamestate to be saved (important for priorities)
* @param mode defines the direction in which the data will be send/received
* 0x1: server->client
- * 0x2: client->server (not recommended)
+ * 0x2: client->server
* 0x3: bidirectional
* @return true: if !doSync or if everything was successfully saved
*/
@@ -269,6 +269,7 @@
++test;
//tempsize += (*i)->getSize( mode );
}
+ assert(tempsize!=0); // if this happens an empty object (with no variables) would be transmitted
// COUT(4) << endl;
header.setObjectID( this->objectID_ );
More information about the Orxonox-commit
mailing list