dune-grid  2.3.1
alugrid/3d/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_ALU3DGRID_CAPABILITIES_HH
4 #define DUNE_ALU3DGRID_CAPABILITIES_HH
5 
6 // only include this code, if ENABLE_ALUGRID is defined
7 #if HAVE_ALUGRID
8 
12 #include <dune/geometry/genericgeometry/topologytypes.hh>
13 
14 
20 namespace Dune
21 {
22 
23  template< int dim, int dimworld >
24  class ALUCubeGrid;
25 
26  template< int dim, int dimworld >
27  class ALUSimplexGrid;
28 
29 
30  namespace Capabilities
31  {
32 
33  // Capabilities for ALUCubeGrid
34  // ----------------------------
35 
47  template< >
48  struct hasSingleGeometryType< ALUCubeGrid< 3, 3 > >
49  {
50  static const bool v = true;
51  static const unsigned int topologyId = GenericGeometry :: CubeTopology< 3 > :: type :: id ;
52  };
53 
54 
58  template< int cdim >
59  struct hasEntity< ALUCubeGrid< 3, 3 >, cdim >
60  {
61  static const bool v = true;
62  };
63 
67 #if ALU3DGRID_PARALLEL
68  template<>
69  struct isParallel< ALUCubeGrid< 3, 3 > >
70  {
71  static const bool v = true;
72  };
73 #endif
74 
78 #if ALU3DGRID_PARALLEL
79  template< int codim >
80  struct canCommunicate< ALUCubeGrid< 3, 3 >, codim >
81  {
82  static const bool v = true;
83  };
84 #endif
85 
89  template<>
90  struct isLevelwiseConforming< ALUCubeGrid< 3, 3 > >
91  {
92  static const bool v = true;
93  };
94 
98  template<>
99  struct hasBackupRestoreFacilities< ALUCubeGrid< 3, 3 > >
100  {
101  static const bool v = true;
102  };
103 
104 
105 
106  // Capabilities for ALUSimplexGrid
107  // -------------------------------
108 
120  template< >
121  struct hasSingleGeometryType< ALUSimplexGrid< 3, 3 > >
122  {
123  static const bool v = true;
124  static const unsigned int topologyId = GenericGeometry :: SimplexTopology< 3 > :: type :: id ;
125  };
126 
130  template< int cdim >
131  struct hasEntity< ALUSimplexGrid< 3, 3 >, cdim >
132  {
133  static const bool v = true;
134  };
135 
139 #if ALU3DGRID_PARALLEL
140  template<>
141  struct isParallel< ALUSimplexGrid< 3, 3 > >
142  {
143  static const bool v = true;
144  };
145 #endif
146 
150 #if ALU3DGRID_PARALLEL
151  template< int codim >
152  struct canCommunicate< ALUSimplexGrid< 3, 3 >, codim >
153  {
154  static const bool v = true;
155  };
156 #endif
157 
161  template<>
162  struct isLevelwiseConforming< ALUSimplexGrid< 3, 3 > >
163  {
164  static const bool v = true;
165  };
166 
170  template<>
171  struct hasBackupRestoreFacilities< ALUSimplexGrid< 3, 3 > >
172  {
173  static const bool v = true;
174  };
175 
176  } // end namespace Capabilities
177 
178 } //end namespace Dune
179 
180 #endif // #if HAVE_ALUGRID
181 
182 #endif
static const bool v
Definition: common/capabilities.hh:57
static const bool v
Definition: common/capabilities.hh:79
static const bool v
Definition: common/capabilities.hh:66
A set of traits classes to store static information about grid implementation.
static const bool v
Definition: common/capabilities.hh:26
static const bool v
Definition: common/capabilities.hh:88
static const unsigned int topologyId
Definition: common/capabilities.hh:29
static const bool v
Definition: common/capabilities.hh:106