Template Class InterpolationVarShapeWrapImpl

Inheritance Relationships

Derived Type

Class Documentation

template<typename T, NVCVBorderType B, NVCVInterpolationType I>
class InterpolationVarShapeWrapImpl

Subclassed by nvcv::cuda::InterpolationVarShapeWrap< T, B, I >

Public Types

using BorderWrapper = BorderVarShapeWrap<T, B>
using ImageBatchWrapper = typename BorderWrapper::ImageBatchWrapper
using ValueType = typename BorderWrapper::ValueType

Public Functions

InterpolationVarShapeWrapImpl() = default
inline explicit __host__ InterpolationVarShapeWrapImpl(const ImageBatchVarShapeDataStridedCuda &images, ValueType borderValue = {})
template<typename... Args> inline explicit __host__ __device__ InterpolationVarShapeWrapImpl (ImageBatchWrapper imageBatchWrap, ValueType borderValue, Args... tensorShape)
inline explicit __host__ __device__ InterpolationVarShapeWrapImpl (BorderWrapper borderWrap)
inline const __host__ __device__ BorderWrapper & borderWrap () const
inline __host__ __device__ float scaleX () const
inline __host__ __device__ float scaleY () const
inline __host__ __device__ bool isIntegerArea () const

Public Static Attributes

static constexpr int kNumDimensions = BorderWrapper::kNumDimensions
static constexpr NVCVInterpolationType kInterpolationType = I
static constexpr auto kActiveDimensions = BorderWrapper::kActiveDimensions
static constexpr int kNumActiveDimensions = BorderWrapper::kNumActiveDimensions

Protected Functions

template<typename DimType, class = Require<                 std::is_same_v<BaseType<DimType>, float> && (NumElements<DimType> == 3 || NumElements<DimType> == 4)>> inline const __host__ __device__ ValueType & doGetValue (DimType c) const
inline const __host__ __device__ ValueType & doGetValue (float3 c, int x, int y) const
inline const __host__ __device__ ValueType & doGetValue (float4 c, int x, int y) const

Protected Attributes

const BorderWrapper m_borderWrap = {}