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...
|
|
int | fixedsize (int dim, int codim) const |
| returns true if size of data per entity of given dim and codim is a constant More...
|
|
bool | overloaded_deprecated_fixedsize (int dim, int codim) const |
|
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) |
| unpack data from message buffer to user. More...
|
|
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) |
◆ DataType
template<class DataHandleImp , class DataTypeImp >
data type of data to communicate
◆ CommDataHandleIF()
template<class DataHandleImp , class DataTypeImp >
◆ contains()
template<class DataHandleImp , class DataTypeImp >
returns true if data for given valid codim should be communicated
- Parameters
-
dim | valid dimension (i.e. the grids dimension) |
codim | valid codimension of the entity set for which data should be communicated |
◆ fixedsize()
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 |
This method calls 'fixedSize' (with a capital S) of the derived class, if it exists in the derived class. Otherwise, it calls 'fixedsize'.
- Deprecated:
- This method (with the lower-case 's') is deprecated. Use 'fixedSize' instead!
◆ fixedSize()
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 |
This method calls 'fixedSize' of the derived class.
◆ gather()
template<class DataHandleImp , class DataTypeImp >
template<class MessageBufferImp , class EntityType >
void Dune::CommDataHandleIF< DataHandleImp, DataTypeImp >::gather |
( |
MessageBufferImp & |
buff, |
|
|
const EntityType & |
e |
|
) |
| const |
|
inline |
pack data from user to message buffer
- Parameters
-
buff | message buffer provided by the grid |
e | entity for which date should be packed to buffer |
◆ overloaded_deprecated_fixedsize()
template<class DataHandleImp , class DataTypeImp >
bool Dune::CommDataHandleIF< DataHandleImp, DataTypeImp >::overloaded_deprecated_fixedsize |
( |
int |
dim, |
|
|
int |
codim |
|
) |
| const |
|
inline |
◆ scatter()
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.
- Parameters
-
buff | message buffer provided by the grid. This is not const, because the buffer has an internal iterator that gets advanced when reading from the buffer. |
e | entity for which date should be unpacked from buffer |
n | number of data written to buffer for this entity before |
◆ size()
template<class DataHandleImp , class DataTypeImp >
template<class EntityType >
how many objects of type DataType have to be sent for a given entity
- Note
- Only the sender side needs to know this size.
- Parameters
-
e | entity for which the size should be determined |
The documentation for this class was generated from the following file: