00001 #ifndef INTERPOLATOR_2_H
00002 #define INTERPOLATOR_2_H
00003
00004 #include "interpolator.h"
00005 #include "point.h"
00006 #include "element.h"
00007
00008 #include <vector>
00009 #include <set>
00010
00011 namespace afl
00012 {
00013
00014
00020 class Interpolator_2 : public Interpolator
00021 {
00023 protected:
00029 Interpolator_2( const Field* f, const Parameters& params );
00030
00034 virtual ~Interpolator_2( );
00035
00042 virtual Element<2> find_u( const Point& x ) const;
00043
00045 private:
00049 mutable std::vector<Element<2> > _elems;
00053 mutable std::vector<std::set<size_t> > _cells;
00054 };
00055
00056 };
00057
00058 #endif // DELAUNAYLINEAR_2_H