public RosSocket(string url) { sharedData = new RosSharedData(); producer = new RosThread(sharedData); producerThread = new Thread(new ThreadStart(producer.Process)); producerThread.Start(); webSocket = new WebSocket(url); webSocket.OnMessage += (sender, e) => recievedOperation((WebSocket)sender, e); webSocket.OnError += (sender, e) => { if (OnError != null) { OnError(this, new RosSocketEventArgs(sender, ((WebSocket)sender).Url, e)); } }; webSocket.OnOpen += (sender, e) => { if (OnOpen != null) { OnOpen(this, new RosSocketEventArgs(sender, ((WebSocket)sender).Url, e)); } }; webSocket.OnClose += (sender, e) => { if (OnClose != null) { OnClose(this, new RosSocketEventArgs(sender, ((WebSocket)sender).Url, e)); } }; }
public RosThread(RosSharedData pointer) { sharedData = pointer; IsAlive = true; }