5 #ifndef DUNE_GEOGRID_GRIDVIEW_HH 6 #define DUNE_GEOGRID_GRIDVIEW_HH 8 #include <dune/common/typetraits.hh> 9 #include <dune/common/exceptions.hh> 28 template<
class HGV,
class CoordFunction,
class Allocator >
36 template<
class HGV,
class CoordFunction,
class Allocator >
39 friend class GridView< HGV, CoordFunction, Allocator >;
41 typedef HGV HostGridView;
73 template< PartitionIteratorType pit >
89 template<
class HGV,
class CoordFunction,
class Allocator >
109 template<
int codim >
111 :
public Traits::template
Codim< codim >
121 : grid_( other.grid_ ), hostGridView_( other.hostGridView_ )
125 : grid_( other.grid_ ), hostGridView_(
std::move( other.hostGridView_ ) )
131 hostGridView_ = other.hostGridView_;
140 hostGridView_ = std::move( other.hostGridView_ );
170 template<
int codim >
173 return begin< codim, All_Partition >();
176 template<
int codim, PartitionIteratorType pit >
182 template<
int codim >
185 return end< codim, All_Partition >();
188 template<
int codim, PartitionIteratorType pit >
197 return IntersectionIteratorImpl( entity,
hostGridView().
ibegin( entity.impl().hostEntity() ) );
203 return IntersectionIteratorImpl( entity,
hostGridView().
iend( entity.impl().hostEntity() ) );
221 template<
class DataHandle,
class Data >
229 WrappedDataHandle wrappedDataHandle(
grid(), dataHandle );
230 return hostGridView().communicate( wrappedDataHandle, interface, direction );
245 #endif // #ifndef DUNE_GEOGRID_GRIDVIEW_HH Traits::IntersectionIterator IntersectionIterator
Definition: geometrygrid/gridview.hh:105
concept IntersectionIterator
Model of an intersection iterator.
Definition: concepts/intersectioniterator.hh:21
Definition: geometrygrid/intersection.hh:21
int overlapSize(int codim) const
Definition: geometrygrid/gridview.hh:211
int ghostSize(int codim) const
Definition: geometrygrid/gridview.hh:216
Dune::EntityIterator< codim, const Grid, IteratorImp > Iterator
Definition: geometrygrid/gridview.hh:77
Grid::template Codim< codim >::Geometry Geometry
Definition: geometrygrid/gridview.hh:70
GridView(const Grid &grid, const HostGridView &hostGridView)
Definition: geometrygrid/gridview.hh:116
Traits::IndexSet IndexSet
Definition: geometrygrid/gridview.hh:101
GridView(This &&other)
Definition: geometrygrid/gridview.hh:124
IntersectionIterator ibegin(const typename Codim< 0 >::Entity &entity) const
Definition: geometrygrid/gridview.hh:194
const IndexSet & indexSet() const
Definition: geometrygrid/gridview.hh:152
Codim< codim >::Iterator begin() const
Definition: geometrygrid/gridview.hh:171
Grid::template Codim< codim >::LocalGeometry LocalGeometry
Definition: geometrygrid/gridview.hh:71
Codim< codim >::template Partition< pit >::Iterator end() const
Definition: geometrygrid/gridview.hh:189
Grid abstract base classThis class is the base class for all grid implementations. Although no virtual functions are used we call it abstract since its methods do not contain an implementation but forward to the methods of the derived class via the Barton-Nackman trick.
Definition: common/grid.hh:375
GeoGrid::Iterator< HostGridView, codim, pit, const Grid > IteratorImp
Definition: geometrygrid/gridview.hh:76
GridView(const This &other)
Definition: geometrygrid/gridview.hh:120
concept Intersection
Model of an intersection.
Definition: concepts/intersection.hh:23
HostGridView::Communication Communication
Definition: geometrygrid/gridview.hh:60
const HostGridView & hostGridView() const
Definition: geometrygrid/gridview.hh:233
Codim< codim >::template Partition< pit >::Iterator begin() const
Definition: geometrygrid/gridview.hh:177
Definition: geometrygrid/gridview.hh:37
GeoGrid::Iterator< HostGridView, codim, All_Partition, const Grid > IteratorImp
Definition: geometrygrid/gridview.hh:65
GridViewTraits< HGV, CoordFunction, Allocator > Traits
Definition: geometrygrid/gridview.hh:95
CommunicationDirection
Define a type for communication direction parameter.
Definition: gridenums.hh:170
bool isConforming() const
Definition: geometrygrid/gridview.hh:158
Codim< codim >::Iterator end() const
Definition: geometrygrid/gridview.hh:183
GridView< HostGridView, CoordFunction, Allocator > GridViewImp
Definition: geometrygrid/gridview.hh:48
This & operator=(const This &other)
Definition: geometrygrid/gridview.hh:128
GeoGrid::IndexSet< const Grid, typename HostGridView::IndexSet > IndexSet
Definition: geometrygrid/gridview.hh:52
Include standard header files.
Definition: agrid.hh:59
IntersectionIterator iend(const typename Codim< 0 >::Entity &entity) const
Definition: geometrygrid/gridview.hh:200
Definition: geometrygrid/gridview.hh:74
CommDataHandleIF describes the features of a data handle for communication in parallel runs using the...
Definition: datahandleif.hh:77
grid wrapper replacing the geometriesGeometryGrid wraps another DUNE grid and replaces its geometry b...
Definition: declaration.hh:12
InterfaceType
Parameter to be used for the communication functions.
Definition: gridenums.hh:86
concept Grid
Requirements for implementations of the Dune::Grid interface.The Grid concept defines interface requi...
Definition: concepts/grid.hh:109
Mesh entities of codimension 0 ("elements") allow to visit all intersections with "neighboring" eleme...
Definition: common/grid.hh:347
Definition: geometrygrid/gridview.hh:29
Dune::EntityIterator< codim, const Grid, IteratorImp > Iterator
Definition: geometrygrid/gridview.hh:66
Dune::Intersection< const Grid, GeoGrid::Intersection< const Grid, HostIntersection > > Intersection
Definition: geometrygrid/gridview.hh:54
Grid::Traits::template Codim< codim >::Entity Entity
Definition: geometrygrid/gridview.hh:68
Intersection of a mesh entity of codimension 0 ("element") with a "neighboring" element or with the d...
Definition: albertagrid/dgfparser.hh:28
Definition: geometrygrid/indexsets.hh:27
int size(const GeometryType &type) const
Definition: geometrygrid/gridview.hh:165
Traits::Intersection Intersection
Definition: geometrygrid/gridview.hh:103
static const bool conforming
Definition: geometrygrid/gridview.hh:114
void reset()
Definition: geometrygrid/indexsets.hh:92
Definition: geometrygrid/gridview.hh:63
Definition: geometrygrid/datahandle.hh:25
Traits::HostGridView HostGridView
Definition: geometrygrid/gridview.hh:97
GeometryType
Type representing VTK's entity geometry types.
Definition: common.hh:132
int size(int codim) const
Definition: geometrygrid/gridview.hh:160
const Communication & comm() const
Definition: geometrygrid/gridview.hh:206
Traits::Communication Communication
Definition: geometrygrid/gridview.hh:107
Definition: iterator.hh:30
const Grid & grid() const
Definition: geometrygrid/gridview.hh:146
A set of traits classes to store static information about grid implementation.
interface class for an iterator over grid entities
Definition: common/entityiterator.hh:31
auto communicate(CommDataHandleIF< DataHandle, Data > &dataHandle, InterfaceType interface, CommunicationDirection direction) const
Definition: geometrygrid/gridview.hh:222
Definition: geometrygrid/entity.hh:60
Definition: geometrygrid/gridview.hh:110
Traits::Grid Grid
Definition: geometrygrid/gridview.hh:99
static const bool conforming
Definition: geometrygrid/gridview.hh:81
Dune::IntersectionIterator< const Grid, GeoGrid::IntersectionIterator< const Grid, HostIntersectionIterator >, GeoGrid::Intersection< const Grid, HostIntersection > > IntersectionIterator
Definition: geometrygrid/gridview.hh:58
Output conforming data.
Definition: common.hh:73
Dune::GeometryGrid< HostGrid, CoordFunction, Allocator > Grid
Definition: geometrygrid/gridview.hh:50