MADNESS  0.10.1
Public Member Functions | Private Types | Private Attributes | List of all members
madness::LBDeuxPmap< NDIM > Class Template Reference

#include <lbdeux.h>

Inheritance diagram for madness::LBDeuxPmap< NDIM >:
Inheritance graph
[legend]
Collaboration diagram for madness::LBDeuxPmap< NDIM >:
Collaboration graph
[legend]

Public Member Functions

 LBDeuxPmap (const std::vector< pairT > &v)
 
ProcessID owner (const keyT &key) const
 Maps key to processor. More...
 
void print () const
 
- Public Member Functions inherited from madness::WorldDCPmapInterface< Key< NDIM > >
virtual ~WorldDCPmapInterface ()
 
void deregister_callback (ptrT ptr)
 Deregisters object for receipt of redistribute callbacks. More...
 
std::size_t global_size (World &world) const
 Counts global number of entries in all containers associated with this process map. More...
 
std::size_t local_size () const
 Counts local number of entries in all containers associated with this process map. More...
 
void print_data_sizes (World &world, const std::string msg="") const
 Prints size info to std::cout. More...
 
void redistribute (World &world, const std::shared_ptr< WorldDCPmapInterface< Key< NDIM > >> &newpmap)
 Invoking this switches all registered objects from this process map to the new one. More...
 
void register_callback (ptrT ptr)
 Registers object for receipt of redistribute callbacks. More...
 

Private Types

typedef mapT::const_iterator iteratorT
 
typedef Key< NDIMkeyT
 
typedef std::map< keyT, ProcessIDmapT
 
typedef std::pair< keyT, ProcessIDpairT
 

Private Attributes

mapT map
 

Additional Inherited Members

- Public Types inherited from madness::WorldDCPmapInterface< Key< NDIM > >
typedef WorldDCRedistributeInterface< Key< NDIM > > * ptrT
 

Member Typedef Documentation

◆ iteratorT

template<std::size_t NDIM>
typedef mapT::const_iterator madness::LBDeuxPmap< NDIM >::iteratorT
private

◆ keyT

template<std::size_t NDIM>
typedef Key<NDIM> madness::LBDeuxPmap< NDIM >::keyT
private

◆ mapT

template<std::size_t NDIM>
typedef std::map<keyT,ProcessID> madness::LBDeuxPmap< NDIM >::mapT
private

◆ pairT

template<std::size_t NDIM>
typedef std::pair<keyT,ProcessID> madness::LBDeuxPmap< NDIM >::pairT
private

Constructor & Destructor Documentation

◆ LBDeuxPmap()

template<std::size_t NDIM>
madness::LBDeuxPmap< NDIM >::LBDeuxPmap ( const std::vector< pairT > &  v)
inline

Member Function Documentation

◆ owner()

template<std::size_t NDIM>
ProcessID madness::LBDeuxPmap< NDIM >::owner ( const keyT key) const
inlinevirtual

Maps key to processor.

Parameters
[in]keyKey for container
Returns
Processor that logically owns the key

Implements madness::WorldDCPmapInterface< Key< NDIM > >.

References madness::Key< NDIM >::level(), madness::LBDeuxPmap< NDIM >::map, madness::Key< NDIM >::parent(), and madness::print().

◆ print()

template<std::size_t NDIM>
void madness::LBDeuxPmap< NDIM >::print ( ) const
inlinevirtual

Member Data Documentation

◆ map

template<std::size_t NDIM>
mapT madness::LBDeuxPmap< NDIM >::map
private

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