00001 #ifndef MeshTypes_HEADER 00002 #define MeshTypes_HEADER 00003 00004 #ifdef HAVE_CONFIG_H 00005 # include <config.h> 00006 #endif 00007 00008 /* Rule of this file: it cannot #include anything else in the current 00009 * directory. The idea is to have all files #include this one, so we 00010 * must make do here with forward declarations. */ 00011 00012 #include <stdlib.h> // size_t 00013 00014 template <size_t ambient> struct GenericMesh; 00015 template <size_t ambient> struct ProtectedBall; 00016 template <size_t ambient> struct RefineVertex; 00017 00018 #include <geometry/Point.h> 00019 #include <utilities/OrderedHash.h> 00020 #include <utilities/hash.h> 00021 00022 template <size_t ambient> 00023 struct MeshTypes { 00024 typedef ::ProtectedBall<ambient> Ball; 00025 typedef ::RefineVertex<ambient> Vertex; 00026 typedef Geometry::Point<ambient> Point; 00027 typedef ::GenericMesh<ambient> GenericMesh; 00028 // typedef hashers::hash_set<Ball*, hudson::hash_by_cast<Ball*> > BallSet; 00029 typedef hudson::OrderedHashSet<Ball*, hudson::HashPointer<Ball> > BallSet; 00030 }; 00031 00032 00033 #endif
1.4.6