dune-grid  2.7.0
common/capabilities.hh
Go to the documentation of this file.
1 // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
2 // vi: set et ts=4 sw=2 sts=2:
3 #ifndef DUNE_CAPABILITIES_HH
4 #define DUNE_CAPABILITIES_HH
5 
10 namespace Dune
11 {
12 
14  namespace Capabilities
15  {
16 
23  template<class Grid>
25  {
26  static const bool v = false;
27  // this value will be initialized with something big
28  // since it is invalid
29  static const unsigned int topologyId = ~0u;
30  };
31 
44  template<class Grid>
45  struct isCartesian
46  {
47  // default value is false
48  static const bool v = false;
49  };
50 
54  template<class Grid, int codim>
55  struct hasEntity
56  {
57  static const bool v = false;
58  };
59 
70  template< class Grid, int codim >
72  {
73  static const bool v = false;
74  };
75 
80  template<class Grid, int codim>
81  struct hasGeometry
82  {
83  static const bool v = true;
84  };
85 
93  template< class Grid, int codim >
95  {
96  static const bool v = false;
97  };
98 
102  template<class Grid>
104  {
105  static const bool v = false;
106  };
107 
111  template<class Grid>
113  {
114  static const bool v = false;
115  };
116 
120  template<class Grid>
122  {
123  static const bool v = false;
124  };
125 
139  template <class Grid>
140  struct threadSafe {
141  static const bool v = false;
142  };
143 
166  template <class Grid>
167  struct viewThreadSafe {
168  static const bool v = false;
169  };
170 
171  /*
172  forward
173  Capabilities::Something<const Grid>
174  to
175  Capabilities::Something<Grid>
176  */
177 
178  template<class Grid>
179  struct hasSingleGeometryType< const Grid >
180  {
182  static const unsigned int topologyId =
184  };
185 
186  template<class Grid>
187  struct isCartesian< const Grid >
188  {
190  };
191 
192  template<class Grid, int codim>
193  struct hasEntity<const Grid, codim>
194  {
196  };
197 
198  template< class Grid, int codim >
199  struct hasEntityIterator< const Grid, codim >
200  {
202  };
203 
204  template< class Grid, int codim >
205  struct canCommunicate< const Grid, codim >
206  {
208  };
209 
210  template<class Grid>
212  {
214  };
215 
216  template<class Grid>
218  {
220  };
221 
222  template<class Grid>
224  {
226  };
227 
228  template <class Grid>
229  struct threadSafe<const Grid> {
231  };
232 
233  template <class Grid>
234  struct viewThreadSafe<const Grid> {
236  };
237 
238  }
239 
240 }
241 
242 #endif // DUNE_CAPABILITIES_HH
Dune::Capabilities::canCommunicate::v
static const bool v
Definition: common/capabilities.hh:96
Dune::Capabilities::isLevelwiseConforming::v
static const bool v
Definition: common/capabilities.hh:105
Dune::Capabilities::hasEntityIterator
specialize with 'true' for all codims that a grid provides an iterator for (default=false)
Definition: common/capabilities.hh:71
Dune::Capabilities::isLeafwiseConforming
Specialize with 'true' if implementation guarantees a conforming leaf grid. (default=false)
Definition: common/capabilities.hh:112
Dune::Capabilities::hasEntity::v
static const bool v
Definition: common/capabilities.hh:57
Dune::Capabilities::threadSafe::v
static const bool v
Definition: common/capabilities.hh:141
Dune::Capabilities::viewThreadSafe::v
static const bool v
Definition: common/capabilities.hh:168
Dune::Capabilities::canCommunicate
specialize with 'true' for all codims that a grid can communicate data on (default=false)
Definition: common/capabilities.hh:94
Dune::Capabilities::hasEntity
Specialize with 'true' for all codims that a grid implements entities for. (default=false)
Definition: common/capabilities.hh:55
Dune::Capabilities::hasBackupRestoreFacilities::v
static const bool v
Definition: common/capabilities.hh:123
Dune::Capabilities::hasSingleGeometryType
Specialize with 'true' for if the codimension 0 entity of the grid has only one possible geometry typ...
Definition: common/capabilities.hh:24
Dune::Capabilities::isLeafwiseConforming::v
static const bool v
Definition: common/capabilities.hh:114
Dune::Capabilities::threadSafe
Specialize with 'true' if the grid implementation is thread safe. (default=false)
Definition: common/capabilities.hh:140
Dune::Capabilities::hasEntityIterator::v
static const bool v
Definition: common/capabilities.hh:73
Dune::Capabilities::isLevelwiseConforming
Specialize with 'true' if implementation guarantees conforming level grids. (default=false)
Definition: common/capabilities.hh:103
Dune::Capabilities::hasGeometry
Specialize with 'false' for all codims that a grid does not implement geometries for....
Definition: common/capabilities.hh:81
Dune::Capabilities::hasGeometry::v
static const bool v
Definition: common/capabilities.hh:83
Dune::Capabilities::isCartesian
Specialize with 'true' if the grid is a Cartesian grid. Cartesian grids satisfy the following propert...
Definition: common/capabilities.hh:45
Dune::Grid
Grid abstract base class.
Definition: common/grid.hh:373
Dune::Capabilities::viewThreadSafe
Specialize with 'true' if the grid implementation is thread safe, while it is not modified....
Definition: common/capabilities.hh:167
Dune::Capabilities::hasSingleGeometryType::v
static const bool v
Definition: common/capabilities.hh:26
Dune::Capabilities::isCartesian::v
static const bool v
Definition: common/capabilities.hh:48
Dune
Include standard header files.
Definition: agrid.hh:58
Dune::Capabilities::hasBackupRestoreFacilities
Specialize with 'true' if implementation provides backup and restore facilities. (default=false)
Definition: common/capabilities.hh:121
Dune::Capabilities::hasSingleGeometryType::topologyId
static const unsigned int topologyId
Definition: common/capabilities.hh:29