Zoltan2
Loading...
Searching...
No Matches
Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t > Class Template Reference

#include <Zoltan2_Directory.hpp>

Inheritance diagram for Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >:
Collaboration diagram for Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >:

Public Types

typedef user_t::value_type user_val_t
Public Types inherited from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >
enum  Update_Mode { Replace = 0 , Add , Aggregate , AggregateAdd }
 Update_Mode determines how update executes. More...

Public Member Functions

 Zoltan2_Directory_Vector (Teuchos::RCP< const Teuchos::Comm< int > > comm_, bool use_lid_, int debug_level_)
 Constructo directory which handles std::vector user data types.
 Zoltan2_Directory_Vector (const Zoltan2_Directory_Vector< gid_t, lid_t, user_t > &src)
 Copy constructor.
Zoltan2_Directory_Vector< gid_t, lid_t, user_t > & operator= (const Zoltan2_Directory_Vector< gid_t, lid_t, user_t > &src)
 operator= to copy a directory.
Public Member Functions inherited from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >
 Zoltan2_Directory (Teuchos::RCP< const Teuchos::Comm< int > > comm_, bool use_lid_, int debug_level_)
 Construct Zoltan2_Directory (abstract class).
virtual ~Zoltan2_Directory ()
 Destructor currently does nothing.
int update (size_t length, const gid_t *gid, const lid_t *lid, const user_t *user, const int *partition, Update_Mode update_mode)
 update is called by user to submit new data.
int find (size_t length, const gid_t *gid, lid_t *lid, user_t *user, int *partition, int *owner, bool throw_if_missing=true)
 Can be Replace, Add, or Aggregate.
int remove (size_t length, const gid_t *gid)
 if true will throw if a gid is not found. This is used by the unit tests to properly assess if remove has worked.
int print () const
 gids to remove.
void stats () const
 stats. New Kokkos mode needs further development.
bool is_use_lid () const
 returns true if the directory is handling local ids.
void get_locally_managed_gids (std::vector< gid_t > &local_gids) const
void remap_user_data_as_unique_gids ()
size_t node_map_size () const

Protected Member Functions

virtual bool is_Zoltan2_Directory_Vector () const
virtual void update_local_user (const user_t *pRaw, user_t &dst)
virtual void user_to_raw (const user_t &src, user_t *pRaw) const
virtual void raw_to_user (const user_t *pRaw, user_t &dst) const
virtual size_t size_of_value_type () const
virtual size_t get_update_msg_size (const user_t &data) const
virtual size_t get_update_msg_size (const user_t *pRaw) const
virtual size_t get_local_find_msg_size (gid_t *gid, bool throw_if_missing=true) const
virtual size_t get_incoming_find_msg_size (Zoltan2_DD_Find_Msg< gid_t, lid_t > *msg) const
Protected Member Functions inherited from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >
int update_local (gid_t *gid, lid_t *lid, user_t *user, int partition, int owner)
int find_local (gid_t *gid, lid_t *lid, user_t *user, int *partition, int *owner, bool throw_if_missing=true) const
int remove_local (gid_t *gid)
void allocate ()
int copy (const Zoltan2_Directory< gid_t, lid_t, user_t > &dd)
unsigned int hash_proc (const gid_t &gid) const

Additional Inherited Members

Protected Types inherited from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >
typedef Kokkos::UnorderedMap< gid_t, Zoltan2_Directory_Node< gid_t, lid_t, user_t >, Kokkos::HostSpace > node_map_t
Protected Attributes inherited from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >
size_t find_msg_size
size_t update_msg_size
size_t remove_msg_size
node_map_t node_map
Teuchos::RCP< const Teuchos::Comm< int > > comm
bool use_lid
int debug_level
size_t max_id_size
Update_Mode mode

Detailed Description

template<typename gid_t, typename lid_t, typename user_t>
class Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >

Definition at line 363 of file Zoltan2_Directory.hpp.

Member Typedef Documentation

◆ user_val_t

template<typename gid_t, typename lid_t, typename user_t>
typedef user_t::value_type Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::user_val_t

Definition at line 365 of file Zoltan2_Directory.hpp.

Constructor & Destructor Documentation

◆ Zoltan2_Directory_Vector() [1/2]

template<typename gid_t, typename lid_t, typename user_t>
Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::Zoltan2_Directory_Vector ( Teuchos::RCP< const Teuchos::Comm< int > > comm_,
bool use_lid_,
int debug_level_ )
inline

Constructo directory which handles std::vector user data types.

Definition at line 368 of file Zoltan2_Directory.hpp.

◆ Zoltan2_Directory_Vector() [2/2]

template<typename gid_t, typename lid_t, typename user_t>
Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::Zoltan2_Directory_Vector ( const Zoltan2_Directory_Vector< gid_t, lid_t, user_t > & src)
inline

Copy constructor.

Definition at line 378 of file Zoltan2_Directory.hpp.

Member Function Documentation

◆ operator=()

template<typename gid_t, typename lid_t, typename user_t>
Zoltan2_Directory_Vector< gid_t, lid_t, user_t > & Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::operator= ( const Zoltan2_Directory_Vector< gid_t, lid_t, user_t > & src)
inline

operator= to copy a directory.

Definition at line 387 of file Zoltan2_Directory.hpp.

◆ is_Zoltan2_Directory_Vector()

template<typename gid_t, typename lid_t, typename user_t>
virtual bool Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::is_Zoltan2_Directory_Vector ( ) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 399 of file Zoltan2_Directory.hpp.

◆ update_local_user()

template<typename gid_t, typename lid_t, typename user_t>
virtual void Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::update_local_user ( const user_t * pRaw,
user_t & dst )
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 402 of file Zoltan2_Directory.hpp.

◆ user_to_raw()

template<typename gid_t, typename lid_t, typename user_t>
virtual void Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::user_to_raw ( const user_t & src,
user_t * pRaw ) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 528 of file Zoltan2_Directory.hpp.

◆ raw_to_user()

template<typename gid_t, typename lid_t, typename user_t>
virtual void Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::raw_to_user ( const user_t * pRaw,
user_t & dst ) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 541 of file Zoltan2_Directory.hpp.

◆ size_of_value_type()

template<typename gid_t, typename lid_t, typename user_t>
virtual size_t Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::size_of_value_type ( ) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 555 of file Zoltan2_Directory.hpp.

◆ get_update_msg_size() [1/2]

template<typename gid_t, typename lid_t, typename user_t>
virtual size_t Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::get_update_msg_size ( const user_t & data) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 561 of file Zoltan2_Directory.hpp.

◆ get_update_msg_size() [2/2]

template<typename gid_t, typename lid_t, typename user_t>
virtual size_t Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::get_update_msg_size ( const user_t * pRaw) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 570 of file Zoltan2_Directory.hpp.

◆ get_local_find_msg_size()

template<typename gid_t, typename lid_t, typename user_t>
virtual size_t Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::get_local_find_msg_size ( gid_t * gid,
bool throw_if_missing = true ) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 579 of file Zoltan2_Directory.hpp.

◆ get_incoming_find_msg_size()

template<typename gid_t, typename lid_t, typename user_t>
virtual size_t Zoltan2::Zoltan2_Directory_Vector< gid_t, lid_t, user_t >::get_incoming_find_msg_size ( Zoltan2_DD_Find_Msg< gid_t, lid_t > * msg) const
inlineprotectedvirtual

Reimplemented from Zoltan2::Zoltan2_Directory< gid_t, lid_t, user_t >.

Definition at line 599 of file Zoltan2_Directory.hpp.


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