public int ProcessPacket(object obj, Packet pkt) { PacketProcessFunc func = null; if (m_ProcessFuncDict.TryGetValue(pkt.GetPacketID(), out func)) { return(func(obj, pkt)); } else { LogManager.Error("Can not find func to process packet, packet ID = " + pkt.GetPacketID().ToString()); return((int)PACKET_PROC_ERROR.E_DEAL_FUNC_NOT_EXIST); } }
public void RegisterProc(int packet_id, PacketProcessFunc func) { Debug.Assert(!m_ProcessFuncDict.ContainsKey(packet_id)); m_ProcessFuncDict.Add(packet_id, func); }