public void Add(EthernetPacket packet) { if (packet.TCPHeader == null) { return; } TCP_StreamAddress address = new TCP_StreamAddress(packet); TCP_StreamPacket streamPacket = new TCP_StreamPacket(); streamPacket.Direction = TCP_Direction.SourceToDestination; streamPacket.Address = address; streamPacket.Packet = packet; int i = Streams.IndexOfKey(address); TCP_Stream stream; if (i == -1) { address.StreamNumber = Streams.Count; stream = new TCP_Stream(streamPacket); Streams.Add(address, stream); } else { stream = Streams.Values[i]; address.StreamNumber = stream.Address.StreamNumber; } stream.Add(streamPacket); Packets.Add(streamPacket); packet.gGroupNumber = address.StreamNumber + 1; }
public TCP_Stream(TCP_StreamPacket streamPacket) { Address = streamPacket.Address; _Add(streamPacket); }