dune-grid  2.6-git
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
Specialize with &#39;true&#39; if implementation guarantees conforming level grids. (default=false) ...
Definition: common/capabilities.hh:103
specialize with &#39;true&#39; for all codims that a grid provides an iterator for (default=false) ...
Definition: common/capabilities.hh:71
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:373
Specialize with &#39;true&#39; for if the codimension 0 entity of the grid has only one possible geometry typ...
Definition: common/capabilities.hh:24
Specialize with &#39;true&#39; if implementation provides backup and restore facilities. (default=false) ...
Definition: common/capabilities.hh:121
specialize with &#39;true&#39; for all codims that a grid can communicate data on (default=false) ...
Definition: common/capabilities.hh:94
Specialize with &#39;true&#39; for all codims that a grid implements entities for. (default=false) ...
Definition: common/capabilities.hh:55
Specialize with &#39;true&#39; if the grid implementation is thread safe, while it is not modified...
Definition: common/capabilities.hh:167
Specialize with &#39;true&#39; if implementation guarantees a conforming leaf grid. (default=false) ...
Definition: common/capabilities.hh:112
Specialize with &#39;false&#39; for all codims that a grid does not implement geometries for. (default=true)
Definition: common/capabilities.hh:81
Specialize with &#39;true&#39; if the grid implementation is thread safe. (default=false) ...
Definition: common/capabilities.hh:140
static const unsigned int topologyId
Definition: common/capabilities.hh:29
static const bool v
Definition: common/capabilities.hh:26
Specialize with &#39;true&#39; if the grid is a Cartesian grid. Cartesian grids satisfy the following propert...
Definition: common/capabilities.hh:45
Include standard header files.
Definition: agrid.hh:58