| Home | Libraries | People | FAQ | More

# IP_MReq_Socket_Option Class Reference

Inherits Socket_Option.

Inheritance diagram for IP_MReq_Socket_Option:

List of all members.

## Detailed Description

IP_MReq_Socket_Option concept for performing multicast requests.

Implemented By:
  boost::asio::ip::multicast::join_group
  boost::asio::ip::multicast::leave_group

## Public Member Functions

| IP_MReq_Socket_Option ()
| Default constructor initialises both the multicast address and the local interface to the "any" address.
| IP_MReq_Socket_Option (const boost::asio::ip::address &multicast_address)
| Construct with multicast address only.
| IP_MReq_Socket_Option (const boost::asio::ip::address_v4 &multicast_address, const boost::asio::ip::address_v4 &local_interface)
| Construct with IP version 4 multicast address and address of local interface to use.
| IP_MReq_Socket_Option (const boost::asio::ip::address_v6 &multicast_address, unsigned long local_interface)
| Construct with IP version 6 multicast address and network interface index.
template<typename Protocol>
int | level (const Protocol &protocol) const
| Get the level of the socket option.
template<typename Protocol>
int | name (const Protocol &protocol) const
| Get the name of the socket option.
template<typename Protocol>
implementation_defined | data (const Protocol &protocol)
| Get a pointer to the socket option data.
template<typename Protocol>
implementation_defined | data (const Protocol &protocol) const
| Get a pointer to the socket option data.
template<typename Protocol>
std::size_t | size (const Protocol &protocol) const
| Get the size of the socket option data in bytes.

## Constructor & Destructor Documentation

IP_MReq_Socket_Option::IP_MReq_Socket_Option | ( |  | ) |

Default constructor initialises both the multicast address and the local interface to the "any" address.

IP_MReq_Socket_Option::IP_MReq_Socket_Option | ( | const boost::asio::ip::address & | multicast_address | ) |

Construct with multicast address only.

IP_MReq_Socket_Option::IP_MReq_Socket_Option | ( | const boost::asio::ip::address_v4 & | multicast_address,
|  | const boost::asio::ip::address_v4 & | local_interface |
| ) |  |  |

Construct with IP version 4 multicast address and address of local interface to use.

IP_MReq_Socket_Option::IP_MReq_Socket_Option | ( | const boost::asio::ip::address_v6 & | multicast_address,
|  | unsigned long | local_interface |
| ) |  |  |

Construct with IP version 6 multicast address and network interface index.

## Member Function Documentation

template<typename Protocol>

int Socket_Option::level | ( | const Protocol & | protocol | ) | const`[inherited]`

Get the level of the socket option.

template<typename Protocol>

int Socket_Option::name | ( | const Protocol & | protocol | ) | const`[inherited]`

Get the name of the socket option.

template<typename Protocol>

implementation_defined Socket_Option::data | ( | const Protocol & | protocol | ) | `[inherited]`

Get a pointer to the socket option data.

template<typename Protocol>

implementation_defined Socket_Option::data | ( | const Protocol & | protocol | ) | const`[inherited]`

Get a pointer to the socket option data.

template<typename Protocol>

std::size_t Socket_Option::size | ( | const Protocol & | protocol | ) | const`[inherited]`

Get the size of the socket option data in bytes.

| Copyright © 2003 - 2006 Christopher M. Kohlhoff