1#include "detail/Interp1d.h"
2#include "detail/SSOBuffer.h"
4namespace isce3 {
namespace core {
6template<
typename KernelType,
typename DataType>
8 size_t length,
size_t stride,
double t,
bool periodic)
11 const auto width =
static_cast<int>(ceil(kernel.width()));
16 detail::interp1d_coeffs(kernel, t, &low, coeffs.data());
17 const DataType* px = detail::get_contiguous_view_or_copy(
18 data.data(), width, low, x, length, stride, periodic);
19 auto sum = detail::inner_product(width, coeffs.data(), px);
24template<
typename KernelType,
typename DataType>
26 const std::valarray<DataType>& x,
double t,
bool periodic)
28 return interp1d(kernel, &x[0], x.size(), 1, t, periodic);
Abstract base class for all kernels.
Definition Kernels.h:19
Small-size optimized (SSO) buffer.
Definition SSOBuffer.h:13
base interpolator is an abstract base class
Definition BinarySearchFunc.cpp:5