utilities.hpp

00001 // This file is part of the imaging2 class library.
00002 //
00003 // University of Innsbruck, Infmath Imaging, 2009.
00004 // http://infmath.uibk.ac.at
00005 //
00006 // All rights reserved.
00007 
00008 
00009 #ifndef SPLINE_UTILITIES_H
00010 #define SPLINE_UTILITIES_H
00011  
00012 #include <spline/Bspline.hpp>
00013 #include <spline/PeriodicBspline.hpp>
00014 
00015 namespace imaging
00016 { 
00022   void basis_spline(size_t i, Bspline<float_t> & spline);
00023   
00028   void basis_spline(size_t i, PeriodicBspline<float_t> & spline);
00029   
00048   void interpolation_matrix(const Bspline<float_t> & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00049   
00068   void interpolation_matrix(const PeriodicBspline<float_t> & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00069   
00088   void basis_spline_matrix(const PeriodicBspline<float_t> & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00089   
00108   void basis_spline_matrix(const Bspline<float_t> & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00109   
00111   namespace spline_utilities_impl
00112   { 
00113     template <class spline_t>
00114     void basis_spline(size_t i, spline_t & spline);
00115     
00116     template <class spline_t>
00117     void interpolation_matrix(const spline_t & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00118     
00119     template <class spline_t>
00120     void basis_spline_matrix(const spline_t & spline, const ublas::vector<float_t> & values, ublas::compressed_matrix< float_t > & matrix);
00121   }
00123 }
00124  
00125  
00126 #endif

Generated on Tue Feb 10 10:01:29 2009 for imaging2 by  doxygen 1.5.5