40 #ifndef mia_2d_interpolator_hh 41 #define mia_2d_interpolator_hh 77 struct C2DWeightCache {
81 C2DWeightCache(
int kernel_size,
126 C2DWeightCache create_cache()
const;
138 T operator () (
const C2DFVector& x, C2DWeightCache& cache)
const;
157 const TCoeff2D& get_coefficients()
const;
166 typename TCoeff2D::value_type evaluate()
const;
176 mutable CMutex m_cache_lock;
177 mutable C2DWeightCache m_cache;
238 __attribute__ ((warn_unused_result));
T2DInterpolator< T > * create(const T2DDatafield< T > &src) const __attribute__((warn_unused_result))
std::shared_ptr< C2DInterpolatorFactory > P2DInterpolatorFactory
Pointer type for the 2D interpolationfactory.
The base class for 2D interpolators that use some kind of spacial convolution.
#define NS_MIA_BEGIN
conveniance define to start the mia namespace
std::shared_ptr< CSplineKernel > PSplineKernel
Abstract base class for B-spline interpolation boundary conditions.
std::vector< typename TCoeff2D::value_type > coeff_vector
helper class for the coefficient field
A class to hold data on a regular 2D grid.
The factory to create an interpolator from some input data.
Base class for all spline based interpolation kernels.
T2DDatafield< typename coeff_map< T >::coeff_type > TCoeff2D
CSplineBoundaryCondition::Pointer PSplineBoundaryCondition
#define NS_MIA_END
conveniance define to end the mia namespace