Inheritance diagram for Eaagles::Basic::LcMulticastHandler:


Public Member Functions | |
| LcMulticastHandler () | |
| LcMulticastHandler (const char *const group, const short port, const short source) | |
| virtual bool | init () |
| virtual bool | joinTheGroup () |
| int | getTTL () const |
| bool | getLoopback () const |
| void | setTTL (const int v) |
| void | setLoopback (const bool b) |
| bool | setSlotMulticastGroup (LcString *const msg) |
| bool | setSlotTTL (const LcNumber *const msg) |
| bool | setSlotLoopback (const LcNumber *const msg) |
Private Attributes | |
| char * | multicastGroup |
| int | ttl |
| bool | loopback |
Multicast network handler.
multicast:
"A point-to-many networking model in which a packet is sent to a specific address,
and only those computers that are set to receive information from this address
receive the packet. On the Internet, the possible IP multicast addresses range
from 224.0.0.0 through 239.255.255.255. Computer networks typically use a unicast
model, in which a different version of the same packet is sent to each address
that must receive it. The multicast model greatly reduces traffic and increases
efficiency on such networks."
Form name: MulticastHandler
Slots:
multicastGroup: <String> String containing the multicast IP address in
the Internet standard "." (dotted) notation.
IP multicast addresses range from 224.0.0.0
through 239.255.255.255 (e.g., "225.0.0.251")
ttl: <Number> Multicast Time-To-Live (TTL) value; default: 1
loopback: <Number> Multicast Loopback flag; default: 0 (off)
(From Windows documentation)
"Note The Winsock version of the IP_MULTICAST_LOOP option is semantically
different than the UNIX version of the IP_MULTICAST_LOOP option:
-> In Winsock, the IP_MULTICAST_LOOP option applies only to the receive path.
-> In the UNIX version, the IP_MULTICAST_LOOP option applies to the send path.
-> For example, applications ON and OFF (which are easier to track than X and Y)
join the same group on the same interface; application ON sets the IP_MULTICAST_LOOP
option on, application OFF sets the IP_MULTICAST_LOOP option off. If ON and OFF are
Winsock applications, OFF can send to ON, but ON cannot sent to OFF. In contrast,
if ON and OFF are UNIX applications, ON can send to OFF, but OFF cannot send to ON."
Input File Example:
( MyNetworkIO
netOutput:
( MulticastHandler
multicastGroup: "224.0.0.251" // Multicast group
port: 2010 // Multicast port
sourcePort: 2 // Port to send from
shared: 1 // Shared socket
ttl: 4 // Time-to-live
loopback: 1 // Loop back
)
)
| loopback Eaagles::Basic::LcMulticastHandler::LcMulticastHandler | ( | ) |
Constructor: where 'group' is the multicast group, or IP address, 'port' is the multicast port and 'source' is the source port.
| Eaagles::Basic::LcMulticastHandler::LcMulticastHandler | ( | const char *const | group, | |
| const short | port, | |||
| const short | source | |||
| ) |
| bool Eaagles::Basic::LcMulticastHandler::init | ( | ) | [virtual] |
| bool Eaagles::Basic::LcMulticastHandler::joinTheGroup | ( | ) | [virtual] |
| int Eaagles::Basic::LcMulticastHandler::getTTL | ( | ) | const [inline] |
Gets the Time-To-Live.
| bool Eaagles::Basic::LcMulticastHandler::getLoopback | ( | ) | const [inline] |
Gets the loopback flag.
| void Eaagles::Basic::LcMulticastHandler::setTTL | ( | const int | v | ) | [inline] |
Sets the Time-To-Live.
| void Eaagles::Basic::LcMulticastHandler::setLoopback | ( | const bool | b | ) | [inline] |
Sets the loopback flag.
| bool Eaagles::Basic::LcMulticastHandler::setSlotMulticastGroup | ( | LcString *const | msg | ) |
| bool Eaagles::Basic::LcMulticastHandler::setSlotTTL | ( | const LcNumber *const | msg | ) |
| bool Eaagles::Basic::LcMulticastHandler::setSlotLoopback | ( | const LcNumber *const | msg | ) |
char* Eaagles::Basic::LcMulticastHandler::multicastGroup [private] |
Multicase Group Name.
int Eaagles::Basic::LcMulticastHandler::ttl [private] |
Time-to-live value.
bool Eaagles::Basic::LcMulticastHandler::loopback [private] |
Loop back flag.
1.5.0