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);
                    }
                }
            }
        }
Exemple #2
0
 public void Release(PureDataMessageReceiver messageReceiver)
 {
     sendNameMessageReceiverDict[messageReceiver.sendName].Remove(messageReceiver);
 }