void ReceiveMessage(string sendName, string message, object[] values) { if (sendName == "Debug") { Logger.Log(string.Format("{0} received Message: {1} {2}", sendName, message, Logger.ObjectToString(values))); } else if (sendName == "Command") { pureData.commandParser.ParseCommand(message, values); } else if (sendNameMessageReceiverDict.ContainsKey(sendName)) { for (int i = sendNameMessageReceiverDict[sendName].Count - 1; i >= 0; i--) { PureDataMessageReceiver receiver = sendNameMessageReceiverDict[sendName][i]; if (receiver.asynchronous) { receiver.Receive(message, values); } else { receiver.Enqueue(message, values); queuedReceivers.Enqueue(receiver); } } } }
public void Release(PureDataMessageReceiver messageReceiver) { sendNameMessageReceiverDict[messageReceiver.sendName].Remove(messageReceiver); }