ThunderEgg  1.0.0
ThunderEgg::NormalNbrInfo< D > Class Template Reference

Represents a neighbor that is at the same refinement level. More...

#include <NormalNbrInfo.h>

Inheritance diagram for ThunderEgg::NormalNbrInfo< D >:
Collaboration diagram for ThunderEgg::NormalNbrInfo< D >:

Public Member Functions

 NormalNbrInfo ()
 Construct a new empty NormalNbrInfo object.
 
 NormalNbrInfo (int id)
 Construct a new NormalNbrInfo object. More...
 
NbrType getNbrType () const override
 Get the NbrType.
 
void getNbrIds (std::deque< int > &nbr_ids) const override
 Add to a deque of neighbor ids.
 
void getNbrRanks (std::deque< int > &nbr_ranks) const override
 Add to a deque of neighbor ranks.
 
void setGlobalIndexes (const std::map< int, int > &id_to_global_index_map) override
 Set the local indexes in the NbrInfo objects. More...
 
void setLocalIndexes (const std::map< int, int > &id_to_local_index_map) override
 Set the global indexes in the NbrInfo objects. More...
 
int serialize (char *buffer) const override
 Serialize object into buffer. More...
 
int deserialize (char *buffer) override
 Deserialize an object. More...
 
std::unique_ptr< NbrInfoBaseclone () const override
 get a clone of this object (equivalent to copy constructor) More...
 
- Public Member Functions inherited from ThunderEgg::NbrInfoBase
virtual ~NbrInfoBase ()=default
 Destroy the NbrInfo object.
 
- Public Member Functions inherited from ThunderEgg::Serializable
virtual ~Serializable ()=default
 Destroy the Serializable object.
 

Public Attributes

int rank = 0
 The mpi rank that the neighbor resides on.
 
int id = 0
 The id of the neighbor.
 
int local_index = -1
 The local index of the neighbor.
 
int global_index = -1
 The global index of the neighbor.
 

Detailed Description

template<int D>
class ThunderEgg::NormalNbrInfo< D >

Represents a neighbor that is at the same refinement level.

Template Parameters
Dthe number of Cartesian dimensions on a patch.

Constructor & Destructor Documentation

◆ NormalNbrInfo()

template<int D>
ThunderEgg::NormalNbrInfo< D >::NormalNbrInfo ( int  id)
inline

Construct a new NormalNbrInfo object.

Parameters
idthe id of the neighbor.

Member Function Documentation

◆ clone()

template<int D>
std::unique_ptr<NbrInfoBase> ThunderEgg::NormalNbrInfo< D >::clone ( ) const
inlineoverridevirtual

get a clone of this object (equivalent to copy constructor)

Returns
std::unique_ptr<NbrInfo> the cloned object

Implements ThunderEgg::NbrInfoBase.

◆ deserialize()

template<int D>
int ThunderEgg::NormalNbrInfo< D >::deserialize ( char *  buffer)
inlineoverridevirtual

Deserialize an object.

Parameters
bufferthe buffer
Returns
int the size of object that was deserialized

Implements ThunderEgg::Serializable.

◆ serialize()

template<int D>
int ThunderEgg::NormalNbrInfo< D >::serialize ( char *  buffer) const
inlineoverridevirtual

Serialize object into buffer.

Parameters
bufferthe buffer. Can be set to nullptr if you just want the size
Returns
int the size of the serialized object

Implements ThunderEgg::Serializable.

◆ setGlobalIndexes()

template<int D>
void ThunderEgg::NormalNbrInfo< D >::setGlobalIndexes ( const std::map< int, int > &  rev_map)
inlineoverridevirtual

Set the local indexes in the NbrInfo objects.

Parameters
rev_mapmap from id to local_index

Implements ThunderEgg::NbrInfoBase.

◆ setLocalIndexes()

template<int D>
void ThunderEgg::NormalNbrInfo< D >::setLocalIndexes ( const std::map< int, int > &  rev_map)
inlineoverridevirtual

Set the global indexes in the NbrInfo objects.

Parameters
rev_mapmap from local_index to global_index

Implements ThunderEgg::NbrInfoBase.


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