00001 #ifndef __DAPTA_HPP__
00002 #define __DAPTA_HPP__
00003
00024
00025 #include <vector>
00026 #include <map>
00027 #include <set>
00028 #include <algorithm>
00029 #include <cassert>
00030 #include <iostream>
00031 #include <string>
00032 #include <sstream>
00033
00034
00035 #include <boost/array.hpp>
00036 #include <boost/iterator/iterator_facade.hpp>
00037 #include <boost/shared_ptr.hpp>
00038
00039
00040 #undef SEEK_SET
00041 #undef SEEK_CUR
00042 #undef SEEK_END
00043 #include "mpi.h"
00044
00045
00046 #ifdef DEBUG
00047 #define INF(txt) std::cout << "(I) : " << txt << std::endl;
00048 #define ERR(txt) std::cout << "(E) : " << txt << std::endl;
00049 #else
00050 #define INF(txt)
00051 #define ERR(txt)
00052 #endif
00053
00055
00059 namespace DAPTA {
00060
00061 template<typename V> class Tetra4;
00062 template<typename V> class Tri3;
00063
00064 template<typename Traits> class Mesh;
00065
00066 template<typename V, int N> class Simplex;
00067 template<typename E> class CohElem;
00068
00069 class Vertex3d;
00070 class Tetra4MeshTraits;
00071 class Tri3MeshTraits;
00072
00073 class ElementConList;
00074 class ElementConListIterator;
00075
00076 template <typename V> class VertexComparison;
00077 template <typename T> class IDComparison;
00078
00079 template <typename V> class DomainDecomposer;
00080 template <typename V> class RCB;
00081 template <typename Traits> class MeshParalleliser;
00082
00084
00088 namespace pico {
00089
00090 class CBuffer;
00091 template <typename V> class DomainCoupler;
00092 template <typename V> class FieldExchanger;
00093 template <typename V> class SubDomain;
00094
00095 }
00096
00097 }
00098
00099 #include "mesh/Mesh.hpp"
00100 #include "mesh/MeshTraits.hpp"
00101
00102 #include "node/Vertex3d.hpp"
00103
00104 #include "elem/Simplex.hpp"
00105 #include "elem/CohElem.hpp"
00106 #include "elem/Tetra4.hpp"
00107 #include "elem/Tri3.hpp"
00108
00109 #include "tools/ElementConList.hpp"
00110 #include "tools/Tools.hpp"
00111
00112 #include "parallel/DomainDecomposer.hpp"
00113 #include "parallel/RCB.hpp"
00114 #include "parallel/MeshParalleliser.hpp"
00115
00116 #include "parallel/pico/CBuffer.hpp"
00117 #include "parallel/pico/DomainCoupler.hpp"
00118 #include "parallel/pico/FieldExchanger.hpp"
00119 #include "parallel/pico/SubDomain.hpp"
00120 #include "parallel/pico/PicoNames.hpp"
00121
00122 #endif