MADNESS  version 0.9
Public Member Functions | Friends | List of all members
madness::ProcessKey< Key, Tag > Class Template Reference

Key object that included the process information. More...

#include <dist_keys.h>

Public Member Functions

 ProcessKey ()
 Default constructor. More...
 
 ProcessKey (const Key &key, const ProcessID proc)
 Constructor. More...
 
 ProcessKey (const ProcessKey< Key, Tag > &other)
 Copy constructor. More...
 
ProcessKey< Key, Tag > & operator= (const ProcessKey< Key, Tag > &other)
 Copy assignment operator. More...
 
const Keykey () const
 Base key accessor. More...
 
ProcessID proc () const
 Process id accessor. More...
 
bool operator== (const ProcessKey< Key, Tag > &other) const
 Equality comparison. More...
 
bool operator!= (const ProcessKey< Key, Tag > &other) const
 Inequality comparison. More...
 
template<typename Archive >
void serialize (const Archive &ar)
 Serialize this key. More...
 

Friends

hashT hash_value (const ProcessKey< Key, Tag > &key)
 Hashing function. More...
 

Detailed Description

template<typename Key, typename Tag = void>
class madness::ProcessKey< Key, Tag >

Key object that included the process information.

Template Parameters
KeyThe base key type
TagA type to differentiate key types

Constructor & Destructor Documentation

template<typename Key, typename Tag = void>
madness::ProcessKey< Key, Tag >::ProcessKey ( )
inline

Default constructor.

template<typename Key, typename Tag = void>
madness::ProcessKey< Key, Tag >::ProcessKey ( const Key key,
const ProcessID  proc 
)
inline

Constructor.

Parameters
keyThe base key
procThe process that generated the key
template<typename Key, typename Tag = void>
madness::ProcessKey< Key, Tag >::ProcessKey ( const ProcessKey< Key, Tag > &  other)
inline

Copy constructor.

Parameters
otherThe key to be copied

Member Function Documentation

template<typename Key, typename Tag = void>
const Key& madness::ProcessKey< Key, Tag >::key ( ) const
inline

Base key accessor.

Returns
The base key
template<typename Key, typename Tag = void>
bool madness::ProcessKey< Key, Tag >::operator!= ( const ProcessKey< Key, Tag > &  other) const
inline

Inequality comparison.

Parameters
otherThe key to be compared to this
Returns
true when other key or other process are not equal to that of this key, otherwise false.
template<typename Key, typename Tag = void>
ProcessKey<Key, Tag>& madness::ProcessKey< Key, Tag >::operator= ( const ProcessKey< Key, Tag > &  other)
inline

Copy assignment operator.

Parameters
otherThe key to be copied
Returns
A reference to this object
template<typename Key, typename Tag = void>
bool madness::ProcessKey< Key, Tag >::operator== ( const ProcessKey< Key, Tag > &  other) const
inline

Equality comparison.

Parameters
otherThe key to be compared to this
Returns
true when other key and other process are equal to that of this key, otherwise false.
template<typename Key, typename Tag = void>
ProcessID madness::ProcessKey< Key, Tag >::proc ( ) const
inline

Process id accessor.

Returns
The process id
template<typename Key, typename Tag = void>
template<typename Archive >
void madness::ProcessKey< Key, Tag >::serialize ( const Archive &  ar)
inline

Serialize this key.

Template Parameters
ArchiveThe archive type
Parameters
arThe archive object that will serialize this object

Friends And Related Function Documentation

template<typename Key, typename Tag = void>
hashT hash_value ( const ProcessKey< Key, Tag > &  key)
friend

Hashing function.

Parameters
keyThe key to be hashed
Returns
The hashed key value

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