ISCE_INSAR/components/zerodop/GPUtopozero/include/UniformInterp.h

26 lines
1.0 KiB
C
Raw Normal View History

2019-01-16 19:40:08 +00:00
//
// Author: Joshua Cohen
// Copyright 2016
//
#ifndef UNIFORMINTERP_H
#define UNIFORMINTERP_H
#include <complex>
#include <vector>
struct UniformInterp {
template <class U, class V> U bilinear(double,double,std::vector<std::vector<V> >&);
template <class U, class V> U bicubic(double,double,std::vector<std::vector<V> >&);
void sinc_coef(double,double,int,double,int,int&,int&,std::vector<double>&);
std::complex<double> sinc_eval(std::vector<std::complex<double> >&,int,std::vector<float>&,int,int,int,double);
template <class U, class V, class W> U sinc_eval_2d(std::vector<std::vector<V> >&,std::vector<W>&,int,int,int,int,double,double,int,int);
float interp2DSpline(int,int,int,std::vector<std::vector<float> >&,double,double);
void initSpline(std::vector<double>&,int,std::vector<double>&,std::vector<double>&);
double spline(double,std::vector<double>&,int,std::vector<double>&);
int ifrac(double);
double quadInterpolate(std::vector<double>&,std::vector<double>&,double);
};
#endif