Ejemplo n.º 1
0
        public static void UnregisterConsumer(IOscConsumer consumer)
        {
            var foundConsumer = false;

            foreach (var group in _groupsByPort.Values)
            {
                if (!group.Consumers.Contains(consumer))
                {
                    continue;
                }

                foundConsumer = true;
                var shouldCloseGroup = @group.Consumers.Count == 1;
                if (shouldCloseGroup)
                {
                    Log.Debug($"Closing port {group.Port}");
                    group.Receiver.Close();
                    group.Thread.Join();
                    _groupsByPort.Remove(group.Port);
                }

                break;
            }

            if (!foundConsumer)
            {
                Log.Error("Attempted to unregister a non-registered OSC consumer?");
            }
        }
Ejemplo n.º 2
0
        public static void RegisterConsumer(IOscConsumer consumer, int port)
        {
            var group = CreateOrGetReceiverForPort(port);

            group.Consumers.Add(consumer);
        }