__gnu_cxx::hash< TransportAddress > Struct Template Reference

defines a hash function for TransportAddress More...

#include <HashFunc.h>

List of all members.

Public Member Functions

std::size_t operator() (const TransportAddress &addr) const
 hash function for TransportAddress

Detailed Description

template<>
struct __gnu_cxx::hash< TransportAddress >

defines a hash function for TransportAddress

Definition at line 67 of file HashFunc.h.


Member Function Documentation

std::size_t __gnu_cxx::hash< TransportAddress >::operator() ( const TransportAddress addr  )  const [inline]

hash function for TransportAddress

Parameters:
addr the TransportAddress to hash
Returns:
the hashed TransportAddress

Definition at line 75 of file HashFunc.h.

00076     {
00077         if (addr.getAddress().isIPv6()) {
00078             return ((bswap_32(addr.getAddress().get6().words()[0]) ^
00079                      bswap_32(addr.getAddress().get6().words()[1]) ^
00080                      bswap_32(addr.getAddress().get6().words()[2]) ^
00081                      bswap_32(addr.getAddress().get6().words()[3])) ^
00082                       addr.getPort());
00083         } else {
00084             return (bswap_32(addr.getAddress().get4().getInt()) ^
00085                     addr.getPort());
00086         }
00087     }


The documentation for this struct was generated from the following file:
Generated on Wed May 26 16:21:19 2010 for OverSim by  doxygen 1.6.3