dune-grid
2.1.1
|
00001 #ifndef DUNE_ALBERTA_CAPABILITIES_HH 00002 #define DUNE_ALBERTA_CAPABILITIES_HH 00003 00004 #include <dune/grid/common/capabilities.hh> 00005 #include <dune/grid/genericgeometry/topologytypes.hh> 00006 00007 00008 #if HAVE_ALBERTA 00009 00010 namespace Dune 00011 { 00012 00013 // External Forward Declarations 00014 // ----------------------------- 00015 00016 template< int dim, int dimworld > 00017 class AlbertaGrid; 00018 00019 00020 00021 // Capabilities 00022 // ------------ 00023 00024 namespace Capabilities 00025 { 00026 00030 template< int dim, int dimworld > 00031 struct hasSingleGeometryType< AlbertaGrid< dim, dimworld > > 00032 { 00033 static const bool v = true; 00034 static const unsigned int topologyId = GenericGeometry :: SimplexTopology< dim > :: type :: id ; 00035 }; 00036 00037 00041 template< int dim, int dimworld, int codim > 00042 struct hasEntity< AlbertaGrid< dim, dimworld >, codim > 00043 { 00044 static const bool v = true; 00045 }; 00046 00051 template< int dim, int dimworld > 00052 struct isLevelwiseConforming< AlbertaGrid< dim, dimworld > > 00053 { 00054 static const bool v = false; 00055 }; 00056 00060 template< int dim, int dimworld > 00061 struct isLeafwiseConforming< AlbertaGrid< dim, dimworld > > 00062 { 00063 static const bool v = true; 00064 }; 00065 00069 template< int dim, int dimworld > 00070 struct hasBackupRestoreFacilities< AlbertaGrid< dim, dimworld > > 00071 { 00072 static const bool v = true; 00073 }; 00074 00075 00076 00077 // non-standard capabilities 00078 // ------------------------- 00079 00080 template< class Grid > 00081 struct hasHierarchicIndexSet; 00082 00083 template< int dim, int dimworld > 00084 struct hasHierarchicIndexSet< AlbertaGrid< dim, dimworld > > 00085 { 00086 static const bool v = true; 00087 }; 00088 00089 } 00090 00091 } 00092 00093 #endif // #if HAVE_ALBERTA 00094 00095 #endif // #ifndef DUNE_ALBERTA_CAPABILITIES_HH