isce3 0.25.0
Loading...
Searching...
No Matches
isce3::cuda::image::gpuSinc2dInterpolator< U > Class Template Reference

gpuSinc2dInterpolator class derived from abstract gpuInterpolator class More...

#include <gpuInterpolator.h>

Inheritance diagram for isce3::cuda::image::gpuSinc2dInterpolator< U >:
isce3::cuda::core::gpuInterpolator< U >

Public Member Functions

CUDA_HOST gpuSinc2dInterpolator (const int kernelLength, const int decimationFactor, const double beta=1.0, const double pedestal=0.0)
 Host constructor where filter construction is performed on host.
 
CUDA_DEV gpuSinc2dInterpolator (double *device_filter, int kernelLength, int decimationFactor)
 Device constructor where filter construction is performed on host and the result is passed to constructor.
 
CUDA_HOSTDEV gpuSinc2dInterpolator (const gpuSinc2dInterpolator &i)
 
CUDA_DEV U interpolate (double, double, const U *, size_t, size_t)
 
CUDA_HOST void interpolate_h (const Matrix< double > &, Matrix< U > &, double, double, U *)
 

Protected Attributes

double * _kernel
 
int _decimationFactor
 
int _kernelLength
 
int _halfKernelLength
 
bool _owner
 

Detailed Description

template<class U>
class isce3::cuda::image::gpuSinc2dInterpolator< U >

gpuSinc2dInterpolator class derived from abstract gpuInterpolator class

Constructor & Destructor Documentation

◆ gpuSinc2dInterpolator() [1/2]

template<class T>
__host__ isce3::cuda::core::gpuSinc2dInterpolator< T >::gpuSinc2dInterpolator ( const int kernelLength,
const int decimationFactor,
const double beta = 1.0,
const double pedestal = 0.0 )

Host constructor where filter construction is performed on host.

Parameters
[in]kernelLengthsize of kernel
[in]decimationFactornumber of divisions per sample (total number samples in the lookup table is kernel length * decimation factor)
[in]betabandwidth of the filter [0, 1]
[in]pedestalwindow parameter [0, 1]

◆ gpuSinc2dInterpolator() [2/2]

template<class U>
CUDA_DEV isce3::cuda::core::gpuSinc2dInterpolator< U >::gpuSinc2dInterpolator ( double * device_filter,
int kernelLength,
int decimationFactor )
inline

Device constructor where filter construction is performed on host and the result is passed to constructor.

_owner set to false as device_filter is initialized, populated, and persisted outside this constructor context.

Parameters
[in]device_filterPointer filter data on device
[in]kernelLengthsize of kernel
[in]decimationFactornumber of divisions per sample (total number samples in the lookup table is kernel length * decimation factor)

Member Function Documentation

◆ interpolate()

template<class U>
__device__ T isce3::cuda::core::gpuSinc2dInterpolator< T >::interpolate ( double ,
double ,
const U * ,
size_t ,
size_t  )
virtual

The documentation for this class was generated from the following files:

Generated for ISCE3.0 by doxygen 1.13.2.