|
template<class T1 , class T2 , class T3 > |
T3 | indexOf (const T1 &arr, T3 sz, const T2 &val, T3 notfoundval) |
|
template<class T1 , class T2 , class T3 > |
T3 | derefIndexOf (const T1 &arr, T3 sz, const T2 &val, T3 notfoundval) |
|
template<class T1 , class T2 , class T3 > |
bool | findPos (const T1 &posarr, T3 sz, T2 pos, T3 beforefirst, T3 &idx) |
|
template<class T1 , class T2 , class T3 > |
bool | findFPPos (const T1 &posarr, T3 sz, T2 pos, T3 beforefirst, T3 &idx, T2 eps=mDefEps) |
|
template<class X > |
int | getLowIdx (const X &x, int sz, double pos) |
|
template<class X > |
int | getUpperIdx (const X &x, int sz, double pos) |
|
template<class X , class Y , class RT > |
void | interpolatePositioned (const X &x, const Y &y, int sz, float desiredx, RT &ret, bool extrapolate=false) |
|
template<class X , class Y > |
float | interpolatePositioned (const X &x, const Y &y, int sz, float pos, bool extrapolate=false) |
|
template<class T > |
int | getInterpolateIdxsWithOff (const T &idxabl, od_int64 sz, od_int64 offset, float pos, bool extrap, float snapdist, od_int64 p[4]) |
|
template<class T > |
int | getInterpolateIdxs (const T &idxabl, int sz, float pos, bool extrap, float snapdist, od_int64 p[4]) |
|
template<class T , class RT > |
bool | interpolateReg (const T &idxabl, int sz, float pos, RT &ret, bool extrapolate=false, float snapdist=mDefEps) |
|
template<class T , class RT > |
bool | interpolateRegWithUdfWithOff (const T &idxabl, od_int64 sz, od_int64 offset, float pos, RT &ret, bool extrapolate=false, float snapdist=mDefEps) |
|
template<class T , class RT > |
bool | interpolateRegWithUdf (const T &idxabl, int sz, float pos, RT &ret, bool extrapolate=false, float snapdist=mDefEps) |
|
template<class T > |
float | interpolateReg (const T &idxabl, int sz, float pos, bool extrapolate=false, float snapdist=mDefEps) |
|
template<class T > |
float | interpolateRegWithUdf (const T &idxabl, int sz, float pos, bool extrapolate=false, float snapdist=mDefEps) |
|
template<class T > |
void | calibrateArray (const T *input, int sz, const T *controlpts, const int *controlsamples, int nrcontrols, bool usefactor, T *output, float *calibrationcurve=0) |
|
template<class T , class RT > |
void | interpolateYPeriodicReg (const T &idxabl, int sz, float pos, RT &ret, RT period, bool extrapolate=false) |
|
template<class T > |
float | interpolateYPeriodicReg (const T &idxabl, int sz, float pos, float period, bool extrapolate=false) |
|
template<class T , class RT > |
void | interpolateXPeriodicReg (const T &idxabl, int sz, float pos, RT &ret) |
|
Position-sorted indexable objects.
These are objects that return a value of type T when the [] operator is applied. Can range from simple arrays and TypeSets to whatever supports the [] operator. The goal is to interpolate between the values. Therefore, the position of the values must be known from either the fact that the values are regular samples or by specifying another indexable object that provides the positions (in float or double).