Exemple #1
0
 public static byte[] SerializeUDP(cProto.PACKETID packetType, pb::IMessage pbmsg)
 {
     byte[] pbbf;
     using (MemoryStream ms = new MemoryStream())
     {
         pb::CodedOutputStream s = new pb::CodedOutputStream(ms);
         pbmsg.WriteTo(s);
         s.Flush();
         pbbf = ms.ToArray();
         s.Dispose();
     }
     return(pbbf);
 }
Exemple #2
0
        public static byte[] Serialize(cProto.PACKETID packetType, pb::IMessage pbmsg)
        {
            int index = (int)packetType;

            byte[] pbbf;
            using (MemoryStream ms = new MemoryStream())
            {
                pb::CodedOutputStream s = new pb::CodedOutputStream(ms);
                pbmsg.WriteTo(s);
                s.Flush();
                pbbf = ms.ToArray();
                s.Dispose();
            }
            byte[] outarray = new byte[sizeof(short) + sizeof(short) + pbbf.Length];

            Array.Copy(BitConverter.GetBytes((short)index), outarray, sizeof(short));
            Array.Copy(BitConverter.GetBytes((short)pbbf.Length), 0, outarray, sizeof(short), sizeof(short));
            Array.Copy(pbbf, 0, outarray, sizeof(int), pbbf.Length);
            return(outarray);
        }