class CAVERN_irbMcastChannel_c

IRB Multicast Communications Channel class

Public Classes

enum CAVERN_mcastChannelEvent_t
Trigger event types for mcast channels.
enum status_t
Status codes returned from CAVERN_irbChannel_c methods.
OK
Operation succeeded.
FAILED
Operation failed.
NEGOTIATED
Used for QoS- operation negotiated a lower QoS.

Public Methods

CAVERN_irbMcastLink_c* link (CAVERN_irbKey_c* localKey)
Link a local key to the multicast channel
void open (char * mcastAddr, unsigned short mcastPort, int mcastTTL, CAVERN_qosAttrib_c* qosAttr, CAVERN_irbMcastChannel_c::status_t *retStatus)
Open the multicast channel to a multicast group

Public

enum CAVERN_mcastChannelEvent_t
Trigger event types for mcast channels.
enum status_t
Status codes returned from CAVERN_irbChannel_c methods.
OK
Operation succeeded.
FAILED
Operation failed.
NEGOTIATED
Used for QoS- operation negotiated a lower QoS.

Documentation

IRB Multicast Communications Channel class. A multicast channel opens up to a multicast group rather than to a remote IRB. Multicast channels use the standard unreliable multicast protocol. If you wish to multicast between distantly located remote sites you will either need your system administrator to set up a multicast tunnel, or you need to create your own version of a tunnel by forming explict CAVERN_irbChannel_c's and links to the remote site. Note: when you open a connection to a multicast group on a machine you cannot open a connection another multicast group from the same machine.
void open(char * mcastAddr, unsigned short mcastPort, int mcastTTL, CAVERN_qosAttrib_c* qosAttr, CAVERN_irbMcastChannel_c::status_t *retStatus)
Open the multicast channel to a multicast group. All IRB programs expected to receive the same packets must listen to the same multicast address and port.

Parameters:
mcastAddr - Specifies a multicast address as a string. Multicast addresses should be of the form 224.x.x.x
mcastPort - Specifies a multicast port.
CAVERN_qosAttrib_c - Specifies the desired QoS. It returns set with the QoS it was able to negotiate. Currently this feature has not been implemented since Nexus does not yet support QoS capabilities.
status - returns OK if got contract; NEGOTIATED if had to negotiate for lower QoS; FAILED if completely failed.

CAVERN_irbMcastLink_c* link(CAVERN_irbKey_c* localKey)
Link a local key to the multicast channel. Note any remote IRBs listening to the same channel with a key that is linked with the SAME NAME will receive data from this key if this key is modified. Conversely if any remote IRB modifies the key this key will also be updated. Hence multicast is like a big pool of memory where everything is shared.


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de