Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

a48.h

Go to the documentation of this file.
00001 00006 /* Copyright (C) 2004 Luiz Velho. */ 00007 00008 #ifndef A48_H 00009 #define A48_H 00010 00011 #include <cstdio> 00012 #include <iostream> 00013 #include <set> 00014 #include <map> 00015 #include <iterator> 00016 #include "heap.h" 00017 00028 namespace A48 { 00029 00030 class Mesh; 00031 class Surface; 00032 class Face; 00033 class Edge; 00034 class Hedge; 00035 class Vertex; 00036 00037 class Markable; 00038 class Error; 00039 00040 00045 typedef std::set<Face*> FaceContainer; 00046 00047 00052 typedef FaceContainer::iterator FaceIter; 00053 00054 00059 typedef std::set<Edge*> EdgeContainer; 00060 00061 00066 typedef EdgeContainer::iterator EdgeIter; 00067 00068 00073 typedef std::set<Vertex*> VertexContainer; 00074 00075 00080 typedef VertexContainer::iterator VertexIter; 00081 00082 00087 typedef std::pair<int,int> Ipair; 00088 00089 00094 typedef std::map<const Ipair, A48::Hedge*> HedgeMap; 00095 00096 00105 class Markable { 00106 bool mark_; 00107 00108 public: 00109 00111 Markable(void) : mark_(false) {}; 00112 00115 void set_mark(bool m) { mark_ = m; }; 00116 00119 bool is_marked(void) const { return mark_; }; 00120 }; 00121 00122 00127 class Error { 00128 public: 00130 Error(char *s=""){ 00131 std::cerr<<"A48 error: "<<s<<std::endl; exit(0); 00132 } 00133 }; 00134 00135 } 00136 00137 #include "face.h" 00138 #include "edge.h" 00139 #include "vertex.h" 00140 #include "mesh.h" 00141 //end of group class. 00143 00144 #endif

Generated on Mon Oct 11 19:32:05 2004 for A48 by doxygen 1.3.7