public UdpReceiver(Thread worker, int listenPort, bool stopReceive, MessageHandlerCallback messageHandler) { _worker = worker; _udp = new UdpClient(listenPort); _stopReceive = stopReceive; _messageHandler = messageHandler; }
public UdpReceiver(int listenPort, bool autoStart, MessageHandlerCallback messageHandler) { _udp = new UdpClient(listenPort); _listenPort = listenPort; _messageHandler = messageHandler; if (autoStart) Start(); }
// We want to be able to serialize callbacks with an int id. This is a hacky way that lets us do that // with reflection without having to explicitly register each one. public static void Initialize() { Type type = typeof(Handlers); foreach (MethodInfo mi in type.GetMethods()) { // Identify ones that match the callbacks MessageHandlerCallback temp = null; try { temp = (MessageHandlerCallback)Delegate.CreateDelegate(typeof(MessageHandlerCallback), mi); } catch (Exception) { } if (temp != null) { idToHandler[mi.Name.CRC32Hash()] = temp; } } }
public UdpReceiver(MessageHandlerCallback messageHandler) : this(null, DefaultPort, false, messageHandler) { }
public UdpReceiver(int listenPort, MessageHandlerCallback messageHandler) : this(null, listenPort, false, messageHandler) { }
public UdpReceiver(MessageHandlerCallback messageHandler) : this(DefaultPort, true, messageHandler) { }
public UdpReceiver(int listenPort, MessageHandlerCallback messageHandler) : this(listenPort, true, messageHandler) { }