public static RdmPacket ReadPacket(RdmBinaryReader data) { RdmPacket rdmPacket = null; RdmHeader header = new RdmHeader(); header.ReadData(data); rdmPacket = RdmPacket.Create(header); if (rdmPacket != null) { rdmPacket.ReadData(data); return(rdmPacket); } else { rdmPacket = RdmPacket.Create(header, typeof(RdmRawPacket)) as RdmRawPacket; if (rdmPacket != null) { rdmPacket.ReadData(data); return(rdmPacket); } } throw new UnknownRdmPacketException(header); }
public static RdmRawPacket ReadPacketRaw(RdmBinaryReader data) { RdmHeader header = new RdmHeader(); header.ReadData(data); RdmRawPacket rdmPacket = RdmPacket.Create(header, typeof(RdmRawPacket)) as RdmRawPacket; if (rdmPacket != null) { rdmPacket.ReadData(data); } return(rdmPacket); }
public static bool TryReadPacket(RdmBinaryReader data, out RdmPacket rdmPacket) { RdmHeader header = new RdmHeader(); header.ReadData(data); rdmPacket = RdmPacket.Create(header); if (rdmPacket != null) { rdmPacket.ReadData(data); return(true); } return(false); }