本文整理汇总了C++中buf_t::ReadChunk方法的典型用法代码示例。如果您正苦于以下问题:C++ buf_t::ReadChunk方法的具体用法?C++ buf_t::ReadChunk怎么用?C++ buf_t::ReadChunk使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类buf_t
的用法示例。
在下文中一共展示了buf_t::ReadChunk方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Copy
void Copy(buf_t &in, buf_t &out, int len)
{
byte *p = in.ReadChunk(len);
if(p)
out.WriteChunk((const char *)p, len);
}
示例2: Go
//.........这里部分代码省略.........
Copy(in, out, 1+ 1);
break;
case svc_activateline:
Copy(in, out, 1+ 8);
break;
case svc_sector:
Copy(in, out, 1+ 10);
break;
case svc_movingsector:
Copy(in, out, 1+ 19);
break;
case svc_switch:
Copy(in, out, 1+ 10);
break;
case svc_print:
Copy(in, out, 1+ 1);
CopyString(in ,out);
break;
case svc_startsound:
Copy(in, out, 1+ 14);
break;
case svc_soundorigin:
Copy(in, out, 1+ 12);
break;
case svc_mobjstate:
Copy(in, out, 1+ 4);
break;
case svc_actor_movedir:
Copy(in, out, 1+ 7);
break;
case svc_actor_target:
case svc_actor_tracer:
Copy(in, out, 1+ 4);
break;
case svc_missedpacket:
Copy(in, out, 1+ 6);
break;
case svc_forceteam:
Copy(in, out, 1+ 2);
break;
case svc_ctfevent:
{
byte event = in.ReadByte();
}
break;
case svc_serversettings:
{
Copy(in, out, 1);;
while(true)
{
byte type = in.ReadByte();
out.WriteByte(type);
if(type == 1)
{
CopyString(in, out);
CopyString(in, out);
}
else break;
}
}
break;
case svc_disconnect:
Copy(in, out, 1);
break;
case svc_full:
Copy(in, out, 1);
break;
case svc_reconnect:
Copy(in, out, 1);
break;
case svc_exitlevel:
Copy(in, out, 1);
break;
case svc_wadinfo:
in.ReadChunk(1+ 4);
break;
case svc_wadchunk:
in.ReadChunk(1+ 4);
break;
case svc_challenge:
Copy(in, out, 1);
break;
case svc_launcher_challenge:
Copy(in, out, 1);
break;
case svc_spectate:
Copy(in, out, 1+ 2);
break;
case svc_abort:
default:
std::cout << "abort" << (int)cmd << std::endl;
in.ReadByte();
break;
}
if(in.overflowed)
{
std::cout << "overflowed on cmd " << (int)cmd << std::endl;
}
}
}