dune-grid  2.2.1
albertagrid/capabilities.hh
Go to the documentation of this file.
1 #ifndef DUNE_ALBERTA_CAPABILITIES_HH
2 #define DUNE_ALBERTA_CAPABILITIES_HH
3 
5 #include <dune/geometry/genericgeometry/topologytypes.hh>
6 
7 
8 #if HAVE_ALBERTA
9 
10 namespace Dune
11 {
12 
13  // External Forward Declarations
14  // -----------------------------
15 
16  template< int dim, int dimworld >
17  class AlbertaGrid;
18 
19 
20 
21  // Capabilities
22  // ------------
23 
24  namespace Capabilities
25  {
26 
30  template< int dim, int dimworld >
31  struct hasSingleGeometryType< AlbertaGrid< dim, dimworld > >
32  {
33  static const bool v = true;
34  static const unsigned int topologyId = GenericGeometry :: SimplexTopology< dim > :: type :: id ;
35  };
36 
37 
41  template< int dim, int dimworld, int codim >
42  struct hasEntity< AlbertaGrid< dim, dimworld >, codim >
43  {
44  static const bool v = true;
45  };
46 
51  template< int dim, int dimworld >
52  struct isLevelwiseConforming< AlbertaGrid< dim, dimworld > >
53  {
54  static const bool v = false;
55  };
56 
60  template< int dim, int dimworld >
61  struct isLeafwiseConforming< AlbertaGrid< dim, dimworld > >
62  {
63  static const bool v = true;
64  };
65 
69  template< int dim, int dimworld >
70  struct hasBackupRestoreFacilities< AlbertaGrid< dim, dimworld > >
71  {
72  static const bool v = true;
73  };
74 
75 
76 
77  // non-standard capabilities
78  // -------------------------
79 
80  template< class Grid >
82 
83  template< int dim, int dimworld >
84  struct hasHierarchicIndexSet< AlbertaGrid< dim, dimworld > >
85  {
86  static const bool v = true;
87  };
88 
89  }
90 
91 }
92 
93 #endif // #if HAVE_ALBERTA
94 
95 #endif // #ifndef DUNE_ALBERTA_CAPABILITIES_HH