dune-pdelab
2.0.0
|
Implement a data handle with a grid function space. More...
#include <dune/pdelab/gridfunctionspace/genericdatahandle.hh>
Public Types | |
typedef CommunicationDescriptor::DataType | DataType |
typedef GFS::Traits::SizeType | size_type |
Public Member Functions | |
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... | |
Static Public Attributes | |
static const size_type | leaf_count = TypeTree::TreeInfo<typename GFS::Ordering>::leafCount |
Implement a data handle with a grid function space.
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 |
typedef CommunicationDescriptor::DataType Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::DataType |
typedef GFS::Traits::SizeType Dune::PDELab::GFSDataHandle< GFS, V, GatherScatter, CommunicationDescriptor >::size_type |
|
inline |
|
inline |
returns true if data for this codim should be communicated
|
inline |
returns true if size per entity of given dim and codim is a constant
|
inline |
pack data from user to message buffer - version with support for sending leaf ordering sizes
|
inline |
pack data from user to message buffer - version without support for sending leaf ordering sizes
|
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
|
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
|
inline |
how many objects of type DataType have to be sent for a given entity
Note: Only the sender side needs to know this size.
|
static |