/* * public void SendCommand(Byte commandID, IReflector reflector, Object command, ByteBuffer sendBuffer) * { * Tmp.SerializeCommand( * Byte[] packet = Tmp.CreateCommandPacket(commandID, reflector, command, 0); * dataSender.HandleData(packet, 0, packet.Length); * } */ /* * void HandleHeartbeat() * { * Console.WriteLine("{0} [{1}] [TmpControl] Got heartbeat", DateTime.Now, remoteEndPoint); * } */ public void SocketReceiverHandler(ref SelectControl selectControl, Socket socket, Buf safeBuffer) { Int32 bytesRead = socket.Receive(safeBuffer.array); if (bytesRead <= 0) { selectControl.DisposeAndRemoveReceiveSocket(socket); Dispose(); return; } //Console.WriteLine("{0} [{1}] [Debug] Got {2} Bytes: {3}", DateTime.Now, remoteEndPoint, bytesRead, safeBuffer.array.ToHexString(0, bytesRead)); if (receiveDataFilter == null) { frameProtocolReceiveHandler.HandleData(safeBuffer.array, 0, (UInt32)bytesRead); } else { receiveDataFilter.FilterTo(frameProtocolReceiveHandler.HandleData, safeBuffer.array, 0, (UInt32)bytesRead); } }
public void HandleData(Byte[] data, UInt32 offset, UInt32 length) { filter.FilterTo(handler, data, offset, length); }