dune-istl  2.3.0
Public Types | Public Member Functions | List of all members
Dune::IndexInfoFromGrid< G, L > Class Template Reference

Information about the index distribution. More...

#include <dune/istl/owneroverlapcopy.hh>

Public Types

typedef G GlobalIdType
 The type of the global index. More...
 
typedef L LocalIdType
 The type of the local index. More...
 
typedef tuple< GlobalIdType,
LocalIdType, int > 
IndexTripel
 A triple describing a local index. More...
 
typedef tuple< int,
GlobalIdType, int > 
RemoteIndexTripel
 A triple describing a remote index. More...
 

Public Member Functions

void addLocalIndex (const IndexTripel &x)
 Add a new index triple to the set of local indices. More...
 
void addRemoteIndex (const RemoteIndexTripel &x)
 Add a new remote index triple to the set of remote indices. More...
 
const std::set< IndexTripel > & localIndices () const
 Get the set of indices local to the process. More...
 
const std::set
< RemoteIndexTripel > & 
remoteIndices () const
 Get the set of remote indices. More...
 
void clear ()
 Remove all indices from the sets. More...
 

Detailed Description

template<class G, class L>
class Dune::IndexInfoFromGrid< G, L >

Information about the index distribution.

This class contains information about indices local to the process together with information about on which processes those indices are also present together with the attribute they have there.

This information might be used to set up an IndexSet together with an RemoteIndices object needed for the ISTL communication classes.

Member Typedef Documentation

template<class G, class L>
typedef G Dune::IndexInfoFromGrid< G, L >::GlobalIdType

The type of the global index.

template<class G, class L>
typedef tuple<GlobalIdType,LocalIdType,int> Dune::IndexInfoFromGrid< G, L >::IndexTripel

A triple describing a local index.

The triple consists of the global index and the local index and an attribute

template<class G, class L>
typedef L Dune::IndexInfoFromGrid< G, L >::LocalIdType

The type of the local index.

template<class G, class L>
typedef tuple<int,GlobalIdType,int> Dune::IndexInfoFromGrid< G, L >::RemoteIndexTripel

A triple describing a remote index.

The triple consists of a process number and the global index and the attribute of the index at the remote process.

Member Function Documentation

template<class G, class L>
void Dune::IndexInfoFromGrid< G, L >::addLocalIndex ( const IndexTripel x)
inline

Add a new index triple to the set of local indices.

Parameters
xThe index triple.

References Dune::OwnerOverlapCopyAttributeSet::copy, Dune::OwnerOverlapCopyAttributeSet::overlap, and Dune::OwnerOverlapCopyAttributeSet::owner.

template<class G, class L>
void Dune::IndexInfoFromGrid< G, L >::addRemoteIndex ( const RemoteIndexTripel x)
inline

Add a new remote index triple to the set of remote indices.

Parameters
xThe index triple to add.

References Dune::OwnerOverlapCopyAttributeSet::copy, Dune::OwnerOverlapCopyAttributeSet::overlap, and Dune::OwnerOverlapCopyAttributeSet::owner.

template<class G, class L>
void Dune::IndexInfoFromGrid< G, L >::clear ( )
inline

Remove all indices from the sets.

template<class G, class L>
const std::set<IndexTripel>& Dune::IndexInfoFromGrid< G, L >::localIndices ( ) const
inline

Get the set of indices local to the process.

Returns
The set of local indices.

Referenced by Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::OwnerOverlapCopyCommunication().

template<class G, class L>
const std::set<RemoteIndexTripel>& Dune::IndexInfoFromGrid< G, L >::remoteIndices ( ) const
inline

Get the set of remote indices.

Returns
the set of remote indices.

Referenced by Dune::OwnerOverlapCopyCommunication< GlobalIdType, LocalIdType >::OwnerOverlapCopyCommunication().


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