MCPcopy Create free account
hub / github.com/TorqueGameEngines/Torque3D / unpackString

Method unpackString

Engine/source/sim/netConnection.cpp:1170–1203  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1168}
1169
1170void NetConnection::unpackString(BitStream *stream, char readBuffer[1024])
1171{
1172 U32 code = stream->readInt(2);
1173 switch(code)
1174 {
1175 case NullString:
1176 readBuffer[0] = 0;
1177 return;
1178 case CString:
1179 {
1180 stream->readString(readBuffer);
1181 return;
1182 }
1183 case TagString:
1184 U32 tag;
1185 tag = stream->readInt(ConnectionStringTable::EntryBitSize);
1186 readBuffer[0] = StringTagPrefixByte;
1187 dSprintf(readBuffer+1, 1023, "%d", tag);
1188 return;
1189 case Integer:
1190 bool neg;
1191 neg = stream->readFlag();
1192 S32 num;
1193 if(stream->readFlag())
1194 num = stream->readInt(7);
1195 else if(stream->readFlag())
1196 num = stream->readInt(15);
1197 else
1198 num = stream->readInt(31);
1199 if(neg)
1200 num = -num;
1201 dSprintf(readBuffer, 1024, "%d", num);
1202 }
1203}
1204
1205void NetConnection::packNetStringHandleU(BitStream *stream, NetStringHandle &h)
1206{

Callers 1

unpackMethod · 0.80

Calls 4

dSprintfFunction · 0.85
readIntMethod · 0.80
readFlagMethod · 0.80
readStringMethod · 0.45

Tested by

no test coverage detected