asio 0.3.8rc3 | Home | Reference | Tutorial | Examples | Design

Reference | Class Hierarchy | Class Index | Member Index

# asio::ip::address_v4 Class Reference

List of all members.

## Detailed Description

Implements IP version 4 style addresses.

The asio::ip::address_v4 class provides the ability to use and manipulate IP version 4 addresses.

Thread Safety
  Distinct objects: Safe.
  Shared objects: Unsafe.

## Public Types

typedef boost::array< unsigned char, 4 > | bytes_type
| The type used to represent an address as an array of bytes.

## Public Member Functions

| address_v4 ()
| Default constructor.
| address_v4 (const bytes_type &bytes)
| Construct an address from raw bytes.
| address_v4 (unsigned long addr)
| Construct an address from a unsigned long in host byte order.
| address_v4 (const address_v4 &other)
| Copy constructor.
address_v4 & | operator= (const address_v4 &other)
| Assign from another address.
bytes_type | to_bytes () const
| Get the address in bytes.
unsigned long | to_ulong () const
| Get the address as an unsigned long in host byte order.
std::string | to_string () const
| Get the address as a string in dotted decimal format.
std::string | to_string (asio::error_code &ec) const
| Get the address as a string in dotted decimal format.
bool | is_class_a () const
| Determine whether the address is a class A address.
bool | is_class_b () const
| Determine whether the address is a class B address.
bool | is_class_c () const
| Determine whether the address is a class C address.
bool | is_multicast () const
| Determine whether the address is a multicast address.

## Static Public Member Functions

static address_v4 | from_string (const char *str)
| Create an address from an IP address string in dotted decimal form.
static address_v4 | from_string (const char *str, asio::error_code &ec)
| Create an address from an IP address string in dotted decimal form.
static address_v4 | from_string (const std::string &str)
| Create an address from an IP address string in dotted decimal form.
static address_v4 | from_string (const std::string &str, asio::error_code &ec)
| Create an address from an IP address string in dotted decimal form.
static address_v4 | any ()
| Obtain an address object that represents any address.
static address_v4 | loopback ()
| Obtain an address object that represents the loopback address.
static address_v4 | broadcast ()
| Obtain an address object that represents the broadcast address.
static address_v4 | broadcast (const address_v4 &addr, const address_v4 &mask)
| Obtain an address object that represents the broadcast address that corresponds to the specified address and netmask.
static address_v4 | netmask (const address_v4 &addr)
| Obtain the netmask that corresponds to the address, based on its address class.

## Friends

bool | operator== (const address_v4 &a1, const address_v4 &a2)
| Compare two addresses for equality.
bool | operator!= (const address_v4 &a1, const address_v4 &a2)
| Compare two addresses for inequality.
bool | operator< (const address_v4 &a1, const address_v4 &a2)
| Compare addresses for ordering.
bool | operator> (const address_v4 &a1, const address_v4 &a2)
| Compare addresses for ordering.
bool | operator<= (const address_v4 &a1, const address_v4 &a2)
| Compare addresses for ordering.
bool | operator>= (const address_v4 &a1, const address_v4 &a2)
| Compare addresses for ordering.

## Related Functions

(Note that these are not member functions.)
template<typename Elem, typename Traits>
std::basic_ostream< Elem, Traits > & | operator<< (std::basic_ostream< Elem, Traits > &os, const address_v4 &addr)
| Output an address as a string.

## Member Typedef Documentation

typedef boost::array<unsigned char, 4> asio::ip::address_v4::bytes_type

The type used to represent an address as an array of bytes.

## Constructor & Destructor Documentation

asio::ip::address_v4::address_v4 | ( |  | ) |

Default constructor.

asio::ip::address_v4::address_v4 | ( | const bytes_type & | bytes | ) | `[explicit]`

Construct an address from raw bytes.

asio::ip::address_v4::address_v4 | ( | unsigned long | addr | ) | `[explicit]`

Construct an address from a unsigned long in host byte order.

asio::ip::address_v4::address_v4 | ( | const address_v4 & | other | ) |

Copy constructor.

## Member Function Documentation

address_v4& asio::ip::address_v4::operator= | ( | const address_v4 & | other | ) |

Assign from another address.

bytes_type asio::ip::address_v4::to_bytes | ( |  | ) | const

Get the address in bytes.

unsigned long asio::ip::address_v4::to_ulong | ( |  | ) | const

Get the address as an unsigned long in host byte order.

std::string asio::ip::address_v4::to_string | ( |  | ) | const

Get the address as a string in dotted decimal format.

std::string asio::ip::address_v4::to_string | ( | asio::error_code & | ec | ) | const

Get the address as a string in dotted decimal format.

static address_v4 asio::ip::address_v4::from_string | ( | const char * | str | ) | `[static]`

Create an address from an IP address string in dotted decimal form.

static address_v4 asio::ip::address_v4::from_string | ( | const char * | str,
|  | asio::error_code & | ec |
| ) |  |  | `[static]`

Create an address from an IP address string in dotted decimal form.

static address_v4 asio::ip::address_v4::from_string | ( | const std::string & | str | ) | `[static]`

Create an address from an IP address string in dotted decimal form.

static address_v4 asio::ip::address_v4::from_string | ( | const std::string & | str,
|  | asio::error_code & | ec |
| ) |  |  | `[static]`

Create an address from an IP address string in dotted decimal form.

bool asio::ip::address_v4::is_class_a | ( |  | ) | const

Determine whether the address is a class A address.

bool asio::ip::address_v4::is_class_b | ( |  | ) | const

Determine whether the address is a class B address.

bool asio::ip::address_v4::is_class_c | ( |  | ) | const

Determine whether the address is a class C address.

bool asio::ip::address_v4::is_multicast | ( |  | ) | const

Determine whether the address is a multicast address.

static address_v4 asio::ip::address_v4::any | ( |  | ) | `[static]`

Obtain an address object that represents any address.

static address_v4 asio::ip::address_v4::loopback | ( |  | ) | `[static]`

Obtain an address object that represents the loopback address.

static address_v4 asio::ip::address_v4::broadcast | ( |  | ) | `[static]`

Obtain an address object that represents the broadcast address.

static address_v4 asio::ip::address_v4::broadcast | ( | const address_v4 & | addr,
|  | const address_v4 & | mask |
| ) |  |  | `[static]`

Obtain an address object that represents the broadcast address that corresponds to the specified address and netmask.

static address_v4 asio::ip::address_v4::netmask | ( | const address_v4 & | addr | ) | `[static]`

Obtain the netmask that corresponds to the address, based on its address class.

## Friends And Related Function Documentation

bool operator== | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare two addresses for equality.

bool operator!= | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare two addresses for inequality.

bool operator< | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare addresses for ordering.

bool operator> | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare addresses for ordering.

bool operator<= | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare addresses for ordering.

bool operator>= | ( | const address_v4 & | a1,
|  | const address_v4 & | a2 |
| ) |  |  | `[friend]`

Compare addresses for ordering.

template<typename Elem, typename Traits>

std::basic_ostream< Elem, Traits > & operator<< | ( | std::basic_ostream< Elem, Traits > & | os,
|  | const address_v4 & | addr |
| ) |  |  | `[related]`

Output an address as a string.

Used to output a human-readable string for a specified address.

Parameters:

  | os | The output stream to which the string will be written.
  | addr | The address to be written.

Returns:
  The output stream.

asio 0.3.8rc3 | Home | Reference | Tutorial | Examples | Design