common/interpolation.hh
Go to the documentation of this file.00001
00002
00003 #ifndef DUNE_INTERPOLATION_HH
00004 #define DUNE_INTERPOLATION_HH
00005
00006 #include <vector>
00007
00008 namespace Dune
00009 {
00010
00012 template<class Imp>
00013 class InterpolationInterface
00014 {
00015 public:
00016
00018
00028 template<typename F, typename C>
00029 void interpolate (const F& f, std::vector<C>& out) const
00030 {
00031 asImp().interpolate(f,out);
00032 }
00033
00034 private:
00035 Imp& asImp () {return static_cast<Imp &> (*this);}
00036 const Imp& asImp () const {return static_cast<const Imp &>(*this);}
00037 };
00038
00039 }
00040
00041 #endif // DUNE_INTERPOLATION_HH