NAME

ACE_SOCK_Dgram_Mcast - Defines the member functions for the ACE SOCK wrapper multicast abstraction.

SYNOPSIS

#include <ace/SOCK_Dgram_Mcast.h>

class ACE_SOCK_Dgram_Mcast : public ACE_SOCK_Dgram { public: ACE_SOCK_Dgram_Mcast (void); int subscribe ( const ACE_INET_Addr &mcast_addr, int reuse_addr = 1, const ASYS_TCHAR *net_if = 0, int protocol_family = PF_INET, int protocol = 0 ); int unsubscribe (void); ssize_t send (const void *buf, size_t n, int flags = 0) const; ssize_t send (const iovec iov[], size_t n, int flags = 0) const; int set_option (int option, char optval); void dump (void) const; ACE_ALLOC_HOOK_DECLARE; private: ACE_HANDLE open ( const ACE_Addr &local, int protocol_family = PF_INET, int protocol = 0 ); ssize_t send ( const void *buf, size_t n, const ACE_Addr &addr, int flags = 0 ) const; ssize_t send ( const iovec iov[], size_t n, const ACE_Addr &addr, int flags = 0 ) const; int make_multicast_address ( const ACE_INET_Addr &mcast_addr, const ASYS_TCHAR *net_if = ASYS_TEXT ("le0") ); ACE_INET_Addr mcast_addr_; };

Initialization routine.

ACE_SOCK_Dgram_Mcast (void);

Multicast group management routines.

int subscribe (
    const ACE_INET_Addr &mcast_addr,
    int reuse_addr = 1,
    const ASYS_TCHAR *net_if = 0,
    int protocol_family = PF_INET,
    int protocol = 0
    );

int unsubscribe (void);

Data transfer routines.

ssize_t send (const void *buf, size_t n, int flags = 0) const;

ssize_t send (const iovec iov[], size_t n, int flags = 0) const;

Options.

int set_option (int option, char optval);

void dump (void) const;

ACE_ALLOC_HOOK_DECLARE;

Disable public use of ACE_SOCK_Dgram::sends and force

ACE_SOCK_Dgram_Mcast::sends inline
ssize_t send (
    const void *buf,
    size_t n,
    const ACE_Addr &addr,
    int flags = 0
    ) const;

ssize_t send (
    const iovec iov[],
    size_t n,
    const ACE_Addr &addr,
    int flags = 0
    ) const;

int make_multicast_address (
    const ACE_INET_Addr &mcast_addr,
    const ASYS_TCHAR *net_if = ASYS_TEXT ("le0")
    );

ACE_INET_Addr mcast_addr_;

IP address.

AUTHORS

Irfan Pyrali (ip1@cs.wustl.edu) Tim Harrison (harrison@cs.wustl.edu)

LIBRARY

ace