xtd 0.2.0
Loading...
Searching...
No Matches
xtd::net::sockets::multicast_option Class Reference
Inheritance diagram for xtd::net::sockets::multicast_option:
xtd::object

Definition

Contains IPAddress values used to join and drop multicast groups.

Contains IPAddress values used to join and drop multicast groups.
Definition multicast_option.hpp:39
Supports all classes in the xtd class hierarchy and provides low-level services to derived classes....
Definition object.hpp:42
#define core_export_
Define shared library export.
Definition core_export.hpp:13
Inheritance
xtd::objectxtd::net::sockets::multicast_option
Header
#include <xtd/net/sockets/multicast_option>
Namespace
xtd::net::sockets
Library
xtd.core
Remarks
Use a xtd::net::sockets::multicast_option to store the xtd::net::ip_address of a multicast group you want to join or drop. Use the xtd::net::sockets::socket::set_socket_option method with the following parameters to join a multicast group.
Parameter Value
socket_option_level xtd::net::sockets::socket_option_level::udp
socket_option_name xtd::net::sockets::socket_option_name::add_membership
object xtd::net::sockets::multicast_option
Use xtd::net::sockets::socket_option_name::drop_membership to drop a multicast group.

Public Constructors

 multicast_option ()=default
 Initializes a new instance of the xtd::net::sockets::multicast_option class.
 
 multicast_option (const xtd::net::ip_address &group, const xtd::net::ip_address &local_address)
 Initializes a new instance of the xtd::net::sockets::multicast_option class with the specified IP multicast group and the local interface address.
 
 multicast_option (const xtd::net::ip_address &group)
 Initializes a new version of the xtd::net::sockets::multicast_option class for the specified IP multicast group.
 
 multicast_option (const xtd::net::ip_address &group, uint32 interface_index)
 Initializes a new instance of the xtd::net::sockets::multicast_option class with the specified IP multicast group and the local interface address.
 

Public Properties

const xtd::net::ip_addressgroup () const noexcept
 Gets the IP address of a multicast group.
 
multicast_optiongroup (const xtd::net::ip_address &value) noexcept
 Sets the IP address of a multicast group.
 
uint32 interface_index () const noexcept
 Gets the interface index that is associated with a multicast group.
 
multicast_optioninterface_index (uint32 value)
 Sets the interface index that is associated with a multicast group.
 
const xtd::net::ip_addresslocal_address () const noexcept
 Gets the local IP address associated with a multicast group.
 
multicast_optionlocal_address (const xtd::net::ip_address &value) noexcept
 Sets he local IP address associated with a multicast group.
 

Additional Inherited Members

- Public Member Functions inherited from xtd::object
 object ()=default
 Create a new instance of the ultimate base class object.
 
virtual bool equals (const object &obj) const noexcept
 Determines whether the specified object is equal to the current object.
 
virtual size_t get_hash_code () const noexcept
 Serves as a hash function for a particular type.
 
virtual type_object get_type () const noexcept
 Gets the type of the current instance.
 
template<typename object_t >
xtd::uptr< object_t > memberwise_clone () const
 Creates a shallow copy of the current object.
 
virtual xtd::string to_string () const noexcept
 Returns a xtd::string that represents the current object.
 
- Static Public Member Functions inherited from xtd::object
template<typename object_a_t , typename object_b_t >
static bool equals (const object_a_t &object_a, const object_b_t &object_b) noexcept
 Determines whether the specified object instances are considered equal.
 
template<typename object_a_t , typename object_b_t >
static bool reference_equals (const object_a_t &object_a, const object_b_t &object_b) noexcept
 Determines whether the specified object instances are the same instance.
 

Constructor & Destructor Documentation

◆ multicast_option() [1/4]

xtd::net::sockets::multicast_option::multicast_option ( )
default

Initializes a new instance of the xtd::net::sockets::multicast_option class.

◆ multicast_option() [2/4]

xtd::net::sockets::multicast_option::multicast_option ( const xtd::net::ip_address group,
const xtd::net::ip_address local_address 
)

Initializes a new instance of the xtd::net::sockets::multicast_option class with the specified IP multicast group and the local interface address.

Parameters
groupThe xtd::net::ip_address of the multicast group.
local_addressThe local xtd::net::ip_address.

◆ multicast_option() [3/4]

xtd::net::sockets::multicast_option::multicast_option ( const xtd::net::ip_address group)
explicit

Initializes a new version of the xtd::net::sockets::multicast_option class for the specified IP multicast group.

Parameters
groupThe xtd::net::ip_address of the multicast group.

◆ multicast_option() [4/4]

xtd::net::sockets::multicast_option::multicast_option ( const xtd::net::ip_address group,
uint32  interface_index 
)

Initializes a new instance of the xtd::net::sockets::multicast_option class with the specified IP multicast group and the local interface address.

Parameters
groupThe xtd::net::ip_address of the multicast group.
interface_indexThe address of the interface.
Exceptions
xtd::argument_out_of_range_exceptioninterface_index > 0x00FFFFFF.

Member Function Documentation

◆ group() [1/2]

const xtd::net::ip_address & xtd::net::sockets::multicast_option::group ( ) const
noexcept

Gets the IP address of a multicast group.

Returns
An xtd::net::ip_address that contains the Internet address of a multicast group.

◆ group() [2/2]

multicast_option & xtd::net::sockets::multicast_option::group ( const xtd::net::ip_address value)
noexcept

Sets the IP address of a multicast group.

Parameters
valueAn xtd::net::ip_address that contains the Internet address of a multicast group.
Returns
the current instance.

◆ interface_index() [1/2]

uint32 xtd::net::sockets::multicast_option::interface_index ( ) const
noexcept

Gets the interface index that is associated with a multicast group.

Returns
A uint32 value that specifies the address of the interface.
Remarks
This property specifies the interface on which data is received or sent.

◆ interface_index() [2/2]

multicast_option & xtd::net::sockets::multicast_option::interface_index ( uint32  value)

Sets the interface index that is associated with a multicast group.

Parameters
valueA uint32 value that specifies the address of the interface.
Returns
the current instance.
Exceptions
xtd::argument_out_of_range_exceptionvalue > 0x00FFFFFF.
Remarks
This property specifies the interface on which data is received or sent.

◆ local_address() [1/2]

const xtd::net::ip_address & xtd::net::sockets::multicast_option::local_address ( ) const
noexcept

Gets the local IP address associated with a multicast group.

Returns
An xtd::net::ip_address that contains the local address associated with a multicast group.

◆ local_address() [2/2]

multicast_option & xtd::net::sockets::multicast_option::local_address ( const xtd::net::ip_address value)
noexcept

Sets he local IP address associated with a multicast group.

Parameters
valueAn xtd::net::ip_address that contains the local address associated with a multicast group.
Returns
the current instance.

The documentation for this class was generated from the following file: