ucommon  7.0.0
About: GNU uCommon C++ is a portable and optimized class framework for writing C++ applications that need to use threads and support concurrent synchronization, and that use sockets, XML parsing, object serialization, thread-optimized string and data structure classes, etc..
  Fossies Dox: ucommon-7.0.0.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

Loading...
Searching...
No Matches
ost::IPV4Multicast Class Reference

A specialization of IPV4Address that provides address validation for multicast addresses. More...

#include <address.h>

Inheritance diagram for ost::IPV4Multicast:
[legend]
Collaboration diagram for ost::IPV4Multicast:
[legend]

Public Member Functions

 IPV4Multicast ()
 Create an Internet Multicast Address object with an empty (0.0.0.0) address. More...
 
 IPV4Multicast (const struct in_addr address)
 Convert the system internet address data type (struct in_addr) into a Common C++ IPV4Multicast object. More...
 
 IPV4Multicast (const char *address)
 Convert a null terminated ASCII multicast address string (example: "224.0.0.1") or multicast name string (example: "sap.mcast.net") directly into a Common C++ IPV4Multicast object. More...
 
- Public Member Functions inherited from ost::IPV4Address
 IPV4Address (const IPV4Validator *validator=NULL)
 Create an Internet Address object with an empty (0.0.0.0) address. More...
 
 IPV4Address (struct in_addr addr, const IPV4Validator *validator=NULL)
 Convert the system internet address data type (struct in_addr) into a Common C++ IPV4Address object. More...
 
 IPV4Address (const char *address, const IPV4Validator *validator=NULL)
 Convert a null terminated ASCII host address string (example: "127.0.0.1") or host address name (example: "www.voxilla.org") directly into a Common C++ IPV4Address object. More...
 
 IPV4Address (const IPV4Address &rhs)
 Copy constructor. More...
 
virtual ~IPV4Address ()
 Destructor. More...
 
const char * getHostname (void) const
 Provide a string representation of the value (Internet Address) held in the IPV4Address object. More...
 
bool isInetAddress (void) const
 May be used to verify if a given IPV4Address returned by another function contains a "valid" address, or "0.0.0.0" which is often used to mark "invalid" IPV4Address values. More...
 
struct in_addr getAddress (void) const
 Provide a low level system usable struct in_addr object from the contents of IPV4Address. More...
 
struct in_addr getAddress (size_t i) const
 Provide a low level system usable struct in_addr object from the contents of IPV4Address. More...
 
size_t getAddressCount () const
 Returns the number of internet addresses that an IPV4Address object contains. More...
 
IPV4Addressoperator= (const char *str)
 
IPV4Addressoperator= (struct in_addr addr)
 
IPV4Addressoperator= (const IPV4Address &rhs)
 
IPV4Addressoperator= (in_addr_t addr)
 Allows assignment from the return of functions like inet_addr() or htonl() More...
 
 operator bool () const
 
bool operator! () const
 
bool operator== (const IPV4Address &a) const
 Compare two internet addresses to see if they are equal (if they specify the physical address of the same internet host). More...
 
bool operator!= (const IPV4Address &a) const
 Compare two internet addresses to see if they are not equal (if they each refer to unique and different physical ip addresses). More...
 

Static Private Attributes

static const IPV4MulticastValidator validator
 Check the address in addr is a valid multicast address. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ost::IPV4Address
bool setIPAddress (const char *host)
 Sets the IP address from a string representation of the numeric address, ie "127.0.0.1". More...
 
void setAddress (const char *host)
 Used to specify a host name or numeric internet address. More...
 
- Protected Attributes inherited from ost::IPV4Address
struct in_addr * ipaddr
 
size_t addr_count
 
char * hostname
 
- Static Protected Attributes inherited from ost::IPV4Address
static Mutex mutex
 

Detailed Description

A specialization of IPV4Address that provides address validation for multicast addresses.

Whenever its value changes the new value is checked to be in the range from 224.0.0.1 through 239.255.255.255. If it is not, an exception is thrown.

A multicast network address.

Author
Federico Montesino p5087.nosp@m.@qui.nosp@m.ntero.nosp@m..fie.nosp@m..us.e.nosp@m.s

Definition at line 651 of file address.h.

Constructor & Destructor Documentation

◆ IPV4Multicast() [1/3]

ost::IPV4Multicast::IPV4Multicast ( )

Create an Internet Multicast Address object with an empty (0.0.0.0) address.

Definition at line 468 of file address.cpp.

◆ IPV4Multicast() [2/3]

ost::IPV4Multicast::IPV4Multicast ( const struct in_addr  address)

Convert the system internet address data type (struct in_addr) into a Common C++ IPV4Multicast object.

Parameters
addressstruct of system used binary internet address.

Definition at line 472 of file address.cpp.

◆ IPV4Multicast() [3/3]

ost::IPV4Multicast::IPV4Multicast ( const char *  address)

Convert a null terminated ASCII multicast address string (example: "224.0.0.1") or multicast name string (example: "sap.mcast.net") directly into a Common C++ IPV4Multicast object.

Works like IPV4Address(const char*).

Parameters
addressnull terminated C string.

Definition at line 476 of file address.cpp.

Member Data Documentation

◆ validator

const IPV4MulticastValidator ost::IPV4Multicast::validator
staticprivate

Check the address in addr is a valid multicast address.

In case not, throws an exception.

Parameters
addressa system network address
Returns
true if validation succeeded

Definition at line 687 of file address.h.


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