lcm.lcm
Class UDPMulticastProvider

java.lang.Object
  extended by lcm.lcm.UDPMulticastProvider
All Implemented Interfaces:
Provider

public class UDPMulticastProvider
extends java.lang.Object
implements Provider

LCM provider for the udpm: URL. All messages are broadcast over a pre-arranged UDP multicast address. Subscription operations are a no-op, since all messages are always broadcast. This mechanism is very simple, low-latency, and efficient due to not having to transmit messages more than once when there are multiple subscribers. Since it uses UDP, it is lossy.


Constructor Summary
UDPMulticastProvider(LCM lcm, URLParser up)
           
 
Method Summary
 void close()
          close() will be called when the application no longer requires the provider and wishes to free the resources used by the provider.
 void publish(java.lang.String channel, byte[] data, int offset, int length)
          Publish() will be called when an application sends a message, and could be called on an arbitrary thread.
 void subscribe(java.lang.String channel)
          subscribe() will be called when a channel subscription has been made.
 void unsubscribe(java.lang.String channel)
          unsubscribe() will be called when a channel subscription is cancelled.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

UDPMulticastProvider

public UDPMulticastProvider(LCM lcm,
                            URLParser up)
                     throws java.io.IOException
Throws:
java.io.IOException
Method Detail

publish

public void publish(java.lang.String channel,
                    byte[] data,
                    int offset,
                    int length)
Description copied from interface: Provider
Publish() will be called when an application sends a message, and could be called on an arbitrary thread.

Specified by:
publish in interface Provider

subscribe

public void subscribe(java.lang.String channel)
Description copied from interface: Provider
subscribe() will be called when a channel subscription has been made. Providers that do not use a broadcast communications mechanism could use this notification to establish communications with additional hosts.

Specified by:
subscribe in interface Provider

unsubscribe

public void unsubscribe(java.lang.String channel)
Description copied from interface: Provider
unsubscribe() will be called when a channel subscription is cancelled.

Specified by:
unsubscribe in interface Provider

close

public void close()
Description copied from interface: Provider
close() will be called when the application no longer requires the provider and wishes to free the resources used by the provider. For example, file handles and network sockets should be closed. After this method is called, the results of any calls to publish or subscribe are undefined.

Specified by:
close in interface Provider