public TunnelWriter(TunnelPipeline tunnelPipeline, byte[] headerBuffer, IPacket packet, IOCallback <TState> callback, TState state) { this.tunnelPipeline = tunnelPipeline; this.packet = packet; this.callback = callback; this.state = state; this.headerBuffer = headerBuffer; }
public TunnelPacketWriter(TunnelPipeline tunnelPipeline) { if (BufferPacket.BufferSize < TunnelPacket.HeaderSize) { throw new InvalidOperationException($"Packet.BufferSize < {TunnelPacket.HeaderSize}"); } this.tunnelPipeline = tunnelPipeline; transPacket = new BufferPacket(tunnelPipeline); }
/// <summary> /// 构造 /// </summary> /// <param name="source"></param> /// <param name="type"></param> /// <param name="data"></param> public OutputTunnelPacket(TunnelPipeline source, byte[] header, TunnelPacketType type, PacketData data) : base(source) { Type = type; this.header = header; this.Length = data?.Size ?? 0; this.data = data; HeaderSerializer.Serialize((int)type, data?.Size ?? 0, header); }
public InputTunnelPacket(TunnelPipeline pipeline) : base(pipeline) { trans = pipeline.TransPipeline; }
/// <summary> /// /// </summary> /// <param name="pipeline"></param> public TunnelPacket(TunnelPipeline pipeline) { this.pipeline = pipeline; }