Implement a data handle with a grid function space.
More...
#include <dune/pdelab/gridfunctionspace/genericdatahandle.hh>
|
typedef CommunicationDescriptor::DataType | DataType |
|
typedef GFS::Traits::SizeType | size_type |
|
|
| GFSDataHandle (const GFS &gfs, V &v, GatherScatter gather_scatter=GatherScatter(), CommunicationDescriptor communication_descriptor=CommunicationDescriptor()) |
|
bool | contains (int dim, int codim) const |
| returns true if data for this codim should be communicated More...
|
|
bool | fixedsize (int dim, int codim) const |
| returns true if size per entity of given dim and codim is a constant More...
|
|
template<typename Entity > |
size_type | size (const Entity &e) const |
| how many objects of type DataType have to be sent for a given entity More...
|
|
template<typename MessageBuffer , typename Entity > |
enable_if< CommunicationDescriptor::wrap_buffer &&AlwaysTrue< Entity >::value >::type | gather (MessageBuffer &buff, const Entity &e) const |
| pack data from user to message buffer - version with support for sending leaf ordering sizes More...
|
|
template<typename MessageBuffer , typename Entity > |
enable_if< !CommunicationDescriptor::wrap_buffer &&AlwaysTrue< Entity >::value >::type | gather (MessageBuffer &buff, const Entity &e) const |
| pack data from user to message buffer - version without support for sending leaf ordering sizes More...
|
|
template<typename MessageBuffer , typename Entity > |
enable_if< CommunicationDescriptor::wrap_buffer &&AlwaysTrue< Entity >::value >::type | scatter (MessageBuffer &buff, const Entity &e, size_type n) |
| unpack data from message buffer to user More...
|
|
template<typename MessageBuffer , typename Entity > |
enable_if< !CommunicationDescriptor::wrap_buffer &&AlwaysTrue< Entity >::value >::type | scatter (MessageBuffer &buff, const Entity &e, size_type n) |
| unpack data from message buffer to user More...
|
|
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
class Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >
Implement a data handle with a grid function space.
- Template Parameters
-
GFS | a grid function space |
V | a vector container associated with the GFS |
GatherScatter | gather/scatter methods with argumemts buffer, and data |
CommunicationDescriptor | A descriptor for the communication structure |
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::GFSDataHandle |
( |
const GFS & |
gfs, |
|
|
V & |
v, |
|
|
GatherScatter |
gather_scatter = GatherScatter() , |
|
|
CommunicationDescriptor |
communication_descriptor = CommunicationDescriptor() |
|
) |
| |
|
inline |
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
returns true if data for this codim should be communicated
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
returns true if size per entity of given dim and codim is a constant
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename MessageBuffer , typename Entity >
enable_if< CommunicationDescriptor::wrap_buffer && AlwaysTrue<Entity>::value >::type Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::gather |
( |
MessageBuffer & |
buff, |
|
|
const Entity & |
e |
|
) |
| const |
|
inline |
pack data from user to message buffer - version with support for sending leaf ordering sizes
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename MessageBuffer , typename Entity >
enable_if< !CommunicationDescriptor::wrap_buffer && AlwaysTrue<Entity>::value >::type Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::gather |
( |
MessageBuffer & |
buff, |
|
|
const Entity & |
e |
|
) |
| const |
|
inline |
pack data from user to message buffer - version without support for sending leaf ordering sizes
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename MessageBuffer , typename Entity >
enable_if< CommunicationDescriptor::wrap_buffer && AlwaysTrue<Entity>::value >::type Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::scatter |
( |
MessageBuffer & |
buff, |
|
|
const Entity & |
e, |
|
|
size_type |
n |
|
) |
| |
|
inline |
unpack data from message buffer to user
n is the number of objects sent by the sender
This is the version with support for receiving leaf ordering sizes
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename MessageBuffer , typename Entity >
enable_if< !CommunicationDescriptor::wrap_buffer && AlwaysTrue<Entity>::value >::type Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::scatter |
( |
MessageBuffer & |
buff, |
|
|
const Entity & |
e, |
|
|
size_type |
n |
|
) |
| |
|
inline |
unpack data from message buffer to user
n is the number of objects sent by the sender
This is the version without support for receiving leaf ordering sizes
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
template<typename Entity >
how many objects of type DataType have to be sent for a given entity
Note: Only the sender side needs to know this size.
template<typename GFS, typename V, typename GatherScatter, typename CommunicationDescriptor = DOFDataCommunicationDescriptor<typename V::ElementType>>
The documentation for this class was generated from the following file: