CommDataHandleIF describes the features of a data handle for communication in parallel runs using the Grid::communicate methods. Here the Barton-Nackman trick is used to interprete data handle objects as its interface. Therefore usable data handle classes need to be derived from this class.
More...
#include <dune/grid/common/datahandleif.hh>
|
bool | contains (int dim, int codim) const |
| returns true if data for given valid codim should be communicated More...
|
|
bool | fixedsize (int dim, int codim) const |
| returns true if size of data per entity of given dim and codim is a constant More...
|
|
template<class EntityType > |
size_t | size (const EntityType &e) const |
| how many objects of type DataType have to be sent for a given entity More...
|
|
template<class MessageBufferImp , class EntityType > |
void | gather (MessageBufferImp &buff, const EntityType &e) const |
| pack data from user to message buffer More...
|
|
template<class MessageBufferImp , class EntityType > |
void | scatter (MessageBufferImp &buff, const EntityType &e, size_t n) |
|
template<class DataHandleImp, class DataTypeImp>
class Dune::CommDataHandleIF< DataHandleImp, DataTypeImp >
CommDataHandleIF describes the features of a data handle for communication in parallel runs using the Grid::communicate methods. Here the Barton-Nackman trick is used to interprete data handle objects as its interface. Therefore usable data handle classes need to be derived from this class.
- Template Parameters
-
DataHandleImp | implementation of the users data handle |
DataTypeImp | type of data that are going to be communicated which is exported as DataType (for example double) |
template<class DataHandleImp, class DataTypeImp>
data type of data to communicate
template<class DataHandleImp, class DataTypeImp>
template<class DataHandleImp, class DataTypeImp>
template<class DataHandleImp, class DataTypeImp>
returns true if size of data per entity of given dim and codim is a constant
- Parameters
-
dim | valid dimension (i.e. the grids dimension) |
codim | valid codimension of the entity set for which data should be communicated |
Referenced by Dune::CommDataHandleIF< DataHandle, double >::fixedsize().
template<class DataHandleImp, class DataTypeImp>
template<class MessageBufferImp , class EntityType >
void Dune::CommDataHandleIF< DataHandleImp, DataTypeImp >::gather |
( |
MessageBufferImp & |
buff, |
|
|
const EntityType & |
e |
|
) |
| const |
|
inline |
template<class DataHandleImp, class DataTypeImp>
template<class MessageBufferImp , class EntityType >
void Dune::CommDataHandleIF< DataHandleImp, DataTypeImp >::scatter |
( |
MessageBufferImp & |
buff, |
|
|
const EntityType & |
e, |
|
|
size_t |
n |
|
) |
| |
|
inline |
unpack data from message buffer to user n is the number of objects sent by the sender
- Parameters
-
buff | message buffer provided by the grid |
e | entity for which date should be unpacked from buffer |
n | number of data written to buffer for this entity before |
Referenced by Dune::CommDataHandleIF< DataHandle, double >::scatter().
template<class DataHandleImp, class DataTypeImp>
template<class EntityType >
The documentation for this class was generated from the following file: