ug4
ug::DistInfoSupplier Class Reference

Automatically attaches ADistInfo to all elements of a grid. More...

Public Member Functions

ADistInfo dist_info_attachment ()
 
 DistInfoSupplier (Grid &grid)
 
vector< TargetProcInfo > & get (Edge *edge)
 
vector< TargetProcInfo > & get (Face *face)
 
vector< TargetProcInfo > & get (GridObject *obj)
 
vector< TargetProcInfo > & get (Vertex *vrt)
 
vector< TargetProcInfo > & get (Volume *vol)
 
template<class TElem >
StringStreamTable get_debug_info (TElem *e)
 
 ~DistInfoSupplier ()
 

Private Member Functions

 DistInfoSupplier (const DistInfoSupplier &di)
 

Private Attributes

Grid::AttachmentAccessor< Edge, ADistInfom_aaDistInfoEDGE
 
Grid::AttachmentAccessor< Face, ADistInfom_aaDistInfoFACE
 
Grid::AttachmentAccessor< Volume, ADistInfom_aaDistInfoVOL
 
Grid::AttachmentAccessor< Vertex, ADistInfom_aaDistInfoVRT
 
ADistInfo m_aDistInfo
 
Gridm_grid
 

Detailed Description

Automatically attaches ADistInfo to all elements of a grid.

On destruction, the attached dist info attachments are removed again. You may access the dist-info in an element through the get method. The get method returns a reference to the attached DistInfo object.

Make sure that the given grid is valid while the DistInfoSupplier exists.

Constructor & Destructor Documentation

◆ DistInfoSupplier() [1/2]

ug::DistInfoSupplier::DistInfoSupplier ( Grid grid)
inline

◆ ~DistInfoSupplier()

ug::DistInfoSupplier::~DistInfoSupplier ( )
inline

◆ DistInfoSupplier() [2/2]

ug::DistInfoSupplier::DistInfoSupplier ( const DistInfoSupplier di)
inlineprivate

Member Function Documentation

◆ dist_info_attachment()

ADistInfo ug::DistInfoSupplier::dist_info_attachment ( )
inline

Referenced by ug::DistributeGrid().

◆ get() [1/5]

vector<TargetProcInfo>& ug::DistInfoSupplier::get ( Edge edge)
inline

◆ get() [2/5]

vector<TargetProcInfo>& ug::DistInfoSupplier::get ( Face face)
inline

◆ get() [3/5]

vector<TargetProcInfo>& ug::DistInfoSupplier::get ( GridObject obj)
inline

◆ get() [4/5]

vector<TargetProcInfo>& ug::DistInfoSupplier::get ( Vertex vrt)
inline

◆ get() [5/5]

vector<TargetProcInfo>& ug::DistInfoSupplier::get ( Volume vol)
inline

◆ get_debug_info()

template<class TElem >
StringStreamTable ug::DistInfoSupplier::get_debug_info ( TElem *  e)
inline

Member Data Documentation

◆ m_aaDistInfoEDGE

Grid::AttachmentAccessor<Edge, ADistInfo> ug::DistInfoSupplier::m_aaDistInfoEDGE
private

◆ m_aaDistInfoFACE

Grid::AttachmentAccessor<Face, ADistInfo> ug::DistInfoSupplier::m_aaDistInfoFACE
private

◆ m_aaDistInfoVOL

Grid::AttachmentAccessor<Volume, ADistInfo> ug::DistInfoSupplier::m_aaDistInfoVOL
private

◆ m_aaDistInfoVRT

Grid::AttachmentAccessor<Vertex, ADistInfo> ug::DistInfoSupplier::m_aaDistInfoVRT
private

◆ m_aDistInfo

ADistInfo ug::DistInfoSupplier::m_aDistInfo
private

◆ m_grid

Grid& ug::DistInfoSupplier::m_grid
private

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