Utility


Detailed Description

Many of these functions are meant to extend the concept of htonl, htons, ntohl and ntohs.

Several decisions were made when creating these functions:


Functions

uint64_t bit::be_to_host (uint64_t x)
 convert 64 bit value x from big-endian to host byte order
int64_t bit::be_to_host (int64_t x)
 convert 64 bit value x from big-endian to host byte order
uint32_t bit::be_to_host (uint32_t x)
 convert 32 bit value x from big-endian to host byte order
int32_t bit::be_to_host (int32_t x)
 convert 32 bit value x from big-endian to host byte order
uint16_t bit::be_to_host (uint16_t x)
 convert 16 bit value x from big-endian to host byte order
int16_t bit::be_to_host (int16_t x)
 convert 16 bit value x from big-endian to host byte order
uint8_t bit::be_to_host (uint8_t x)
 convert 8 bit value x from big-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::be_to_host (int8_t x)
 convert 8 bit value x from big-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::host_to_be (uint64_t x)
 convert 64 bit value x from host to big-endian byte order
int64_t bit::host_to_be (int64_t x)
 convert 64 bit value x from host to big-endian byte order
uint32_t bit::host_to_be (uint32_t x)
 convert 32 bit value x from host to big-endian byte order
int32_t bit::host_to_be (int32_t x)
 convert 32 bit value x from host to big-endian byte order
uint16_t bit::host_to_be (uint16_t x)
 convert 16 bit value x from host to big-endian byte order
int16_t bit::host_to_be (int16_t x)
 convert 16 bit value x from host to big-endian byte order
uint8_t bit::host_to_be (uint8_t x)
 convert 8 bit value x from host to big-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::host_to_be (int8_t x)
 convert 8 bit value x from host to big-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::le_to_host (uint64_t x)
 convert 64 bit value x from little-endian to host byte order
int64_t bit::le_to_host (int64_t x)
 convert 64 bit value x from little-endian to host byte order
uint32_t bit::le_to_host (uint32_t x)
 convert 32 bit value x from little-endian to host byte order
int32_t bit::le_to_host (int32_t x)
 convert 32 bit value x from little-endian to host byte order
uint16_t bit::le_to_host (uint16_t x)
 convert 16 bit value x from little-endian to host byte order
int16_t bit::le_to_host (int16_t x)
 convert 16 bit value x from little-endian to host byte order
uint8_t bit::le_to_host (uint8_t x)
 convert 8 bit value x from little-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::le_to_host (int8_t x)
 convert 8 bit value x from little-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::host_to_le (uint64_t x)
 convert 64 bit value x from host to little-endian byte order
int64_t bit::host_to_le (int64_t x)
 convert 64 bit value x from host to little-endian byte order
uint32_t bit::host_to_le (uint32_t x)
 convert 32 bit value x from host to little-endian byte order
int32_t bit::host_to_le (int32_t x)
 convert 32 bit value x from host to little-endian byte order
uint16_t bit::host_to_le (uint16_t x)
 convert 16 bit value x from host to little-endian byte order
int16_t bit::host_to_le (int16_t x)
 convert 16 bit value x from host to little-endian byte order
uint8_t bit::host_to_le (uint8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::host_to_le (int8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::net_to_host (uint64_t x)
 convert 64 bit value x from network to host byte order
int64_t bit::net_to_host (int64_t x)
 convert 64 bit value x from network to host byte order
uint32_t bit::net_to_host (uint32_t x)
 convert 32 bit value x from network to host byte order
int32_t bit::net_to_host (int32_t x)
 convert 32 bit value x from network to host byte order
uint16_t bit::net_to_host (uint16_t x)
 convert 16 bit value x from network to host byte order
int16_t bit::net_to_host (int16_t x)
 convert 16 bit value x from network to host byte order
uint8_t bit::net_to_host (uint8_t x)
 convert 8 bit value x from network to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::net_to_host (int8_t x)
 convert 8 bit value x from network to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::host_to_net (uint64_t x)
 convert 64 bit value x from host to network byte order
int64_t bit::host_to_net (int64_t x)
 convert 64 bit value x from host to network byte order
uint32_t bit::host_to_net (uint32_t x)
 convert 32 bit value x from host to network byte order
int32_t bit::host_to_net (int32_t x)
 convert 32 bit value x from host to network byte order
uint16_t bit::host_to_net (uint16_t x)
 convert 16 bit value x from host to network byte order
int16_t bit::host_to_net (int16_t x)
 convert 16 bit value x from host to network byte order
uint8_t bit::host_to_net (uint8_t x)
 convert 8 bit value x from host to network byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::host_to_net (int8_t x)
 convert 8 bit value x from host to network byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::le_to_be (uint64_t x)
 convert 64 bit value x from host to little-endian byte order
int64_t bit::le_to_be (int64_t x)
 convert 64 bit value x from host to little-endian byte order
uint32_t bit::le_to_be (uint32_t x)
 convert 32 bit value x from host to little-endian byte order
int32_t bit::le_to_be (int32_t x)
 convert 32 bit value x from host to little-endian byte order
uint16_t bit::le_to_be (uint16_t x)
 convert 16 bit value x from host to little-endian byte order
int16_t bit::le_to_be (int16_t x)
 convert 16 bit value x from host to little-endian byte order
uint8_t bit::le_to_be (uint8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::le_to_be (int8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::le_to_net (uint64_t x)
 convert 64 bit value x from host to little-endian byte order
int64_t bit::le_to_net (int64_t x)
 convert 64 bit value x from host to little-endian byte order
uint32_t bit::le_to_net (uint32_t x)
 convert 32 bit value x from host to little-endian byte order
int32_t bit::le_to_net (int32_t x)
 convert 32 bit value x from host to little-endian byte order
uint16_t bit::le_to_net (uint16_t x)
 convert 16 bit value x from host to little-endian byte order
int16_t bit::le_to_net (int16_t x)
 convert 16 bit value x from host to little-endian byte order
uint8_t bit::le_to_net (uint8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::le_to_net (int8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::be_to_le (uint64_t x)
 convert 64 bit value x from host to little-endian byte order
int64_t bit::be_to_le (int64_t x)
 convert 64 bit value x from host to little-endian byte order
uint32_t bit::be_to_le (uint32_t x)
 convert 32 bit value x from host to little-endian byte order
int32_t bit::be_to_le (int32_t x)
 convert 32 bit value x from host to little-endian byte order
uint16_t bit::be_to_le (uint16_t x)
 convert 16 bit value x from host to little-endian byte order
int16_t bit::be_to_le (int16_t x)
 convert 16 bit value x from host to little-endian byte order
uint8_t bit::be_to_le (uint8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::be_to_le (int8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
uint64_t bit::net_to_le (uint64_t x)
 convert 64 bit value x from host to little-endian byte order
int64_t bit::net_to_le (int64_t x)
 convert 64 bit value x from host to little-endian byte order
uint32_t bit::net_to_le (uint32_t x)
 convert 32 bit value x from host to little-endian byte order
int32_t bit::net_to_le (int32_t x)
 convert 32 bit value x from host to little-endian byte order
uint16_t bit::net_to_le (uint16_t x)
 convert 16 bit value x from host to little-endian byte order
int16_t bit::net_to_le (int16_t x)
 convert 16 bit value x from host to little-endian byte order
uint8_t bit::net_to_le (uint8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
int8_t bit::net_to_le (int8_t x)
 convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.
double bit::be_to_host (double x)
 convert double value x from network to host byte order
double bit::le_to_host (double x)
 convert double value x from network to host byte order
double bit::net_to_host (double x)
 convert double value x from network to host byte order
float bit::be_to_host (float x)
 convert float value x from network to host byte order
float bit::le_to_host (float x)
 convert float value x from network to host byte order
float bit::net_to_host (float x)
 convert float value x from network to host byte order
long double bit::be_to_host (long double x)
 convert long double value x from network to host byte order
long double bit::le_to_host (long double x)
 convert long double value x from network to host byte order
long double bit::net_to_host (long double x)
 convert long double value x from network to host byte order
double bit::host_to_be (double x)
 convert double value x from host to network byte order
double bit::host_to_le (double x)
 convert double value x from host to network byte order
double bit::host_to_net (double x)
 convert double value x from host to network byte order
float bit::host_to_be (float x)
 convert float value x from host to network byte order
float bit::host_to_le (float x)
 convert float value x from host to network byte order
float bit::host_to_net (float x)
 convert float value x from host to network byte order
long double bit::host_to_be (long double x)
 convert long double value x from host to network byte order
long double bit::host_to_le (long double x)
 convert long double value x from host to network byte order
long double bit::host_to_net (long double x)
 convert long double value x from host to network byte order
double bit::le_to_be (double x)
 convert double value x from host to network byte order
float bit::le_to_be (float x)
 convert float value x from host to network byte order
long double bit::le_to_be (long double x)
 convert long double value x from host to network byte order
double bit::le_to_net (double x)
 convert double value x from host to network byte order
float bit::le_to_net (float x)
 convert float value x from host to network byte order
long double bit::le_to_net (long double x)
 convert long double value x from host to network byte order
double bit::be_to_le (double x)
 convert double value x from host to network byte order
float bit::be_to_le (float x)
 convert float value x from host to network byte order
long double bit::be_to_le (long double x)
 convert long double value x from host to network byte order
double bit::net_to_le (double x)
 convert double value x from host to network byte order
float bit::net_to_le (float x)
 convert float value x from host to network byte order
long double bit::net_to_le (long double x)
 convert long double value x from host to network byte order


Function Documentation

int8_t bit::be_to_host ( int8_t  x  ) 

convert 8 bit value x from big-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::be_to_host ( uint8_t  x  ) 

convert 8 bit value x from big-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::be_to_le ( int8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::be_to_le ( uint8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::host_to_be ( int8_t  x  ) 

convert 8 bit value x from host to big-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::host_to_be ( uint8_t  x  ) 

convert 8 bit value x from host to big-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::host_to_le ( int8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::host_to_le ( uint8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::host_to_net ( int8_t  x  ) 

convert 8 bit value x from host to network byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::host_to_net ( uint8_t  x  ) 

convert 8 bit value x from host to network byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::le_to_be ( int8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::le_to_be ( uint8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::le_to_host ( int8_t  x  ) 

convert 8 bit value x from little-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::le_to_host ( uint8_t  x  ) 

convert 8 bit value x from little-endian to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::le_to_net ( int8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::le_to_net ( uint8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::net_to_host ( int8_t  x  ) 

convert 8 bit value x from network to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::net_to_host ( uint8_t  x  ) 

convert 8 bit value x from network to host byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

int8_t bit::net_to_le ( int8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.

uint8_t bit::net_to_le ( uint8_t  x  ) 

convert 8 bit value x from host to little-endian byte order There aren't any endian changes for 8-bit values, but, this method is included to allow overloading to occur properly for all integer values.

Without this, calling be_to_host(uint16_t) is selected, which is not the expected behavior if this overloaded function is called from a template.


Generated on Tue Mar 13 20:00:01 2007 by  doxygen 1.5.1