NVIDIA NvNeural SDK  2022.2
GPU inference framework for NVIDIA Nsight Deep Learning Designer
nvneural::IPoolingLayer Class Referenceabstract

IPoolingLayer is an optional interface implemented by pooling layers. More...

#include <nvneural/layers/IPoolingLayer.h>

Inheritance diagram for nvneural::IPoolingLayer:
nvneural::IRefObject

Public Member Functions

virtual NeuralResult getKernelSize (std::size_t *pKernelW, std::size_t *pKernelH) const noexcept=0
 Retrieves the kernel size for the W and H axes. More...
 
virtual NeuralResult getPadding (std::size_t *pStartW, std::size_t *pStartH, std::size_t *pEndW, std::size_t *pEndH) const noexcept=0
 Retrieves the start and end padding for the W and H axes. More...
 
virtual NeuralResult getStride (std::size_t *pStrideW, std::size_t *pStrideH) const noexcept=0
 Retrieves the operation stride for the W and H axes. More...
 
virtual PoolType poolingType () const noexcept=0
 Returns the type of pooling operation performed by this layer.
 
virtual NeuralResult setEndPadding (std::size_t endW, std::size_t endH) noexcept=0
 Sets the end padding along the W and H axes. More...
 
virtual NeuralResult setKernelSize (std::size_t kernelW, std::size_t kernelH) noexcept=0
 Sets the kernel size for the W and H axes. More...
 
virtual NeuralResult setPoolingType (PoolType poolType) noexcept=0
 Sets the type of pooling operation. More...
 
virtual NeuralResult setStartPadding (std::size_t startW, std::size_t startH) noexcept=0
 Sets the start padding along the W and H axes. More...
 
virtual NeuralResult setStride (std::size_t strideW, std::size_t strideH) noexcept=0
 Sets the operation stride for the W and H axes. More...
 
- Public Member Functions inherited from nvneural::IRefObject
virtual RefCount addRef () const noexcept=0
 Increments the object's reference count. More...
 
virtual const void * queryInterface (TypeId interface) const noexcept=0
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
virtual void * queryInterface (TypeId interface) noexcept=0
 Retrieves a new object interface pointer. More...
 
virtual RefCount release () const noexcept=0
 Decrements the object's reference count and destroy the object if the reference count reaches zero. More...
 

Static Public Attributes

static const IRefObject::TypeId typeID = 0x2e8a0e0dbd99fe82ul
 Interface TypeId for InterfaceOf purposes.
 
- Static Public Attributes inherited from nvneural::IRefObject
static const TypeId typeID = 0x14ecc3f9de638e1dul
 Interface TypeId for InterfaceOf purposes.
 

Additional Inherited Members

- Public Types inherited from nvneural::IRefObject
using RefCount = std::uint32_t
 Typedef used to track the number of active references to an object.
 
using TypeId = std::uint64_t
 Every interface must define a unique TypeId. This should be randomized.
 
- Protected Member Functions inherited from nvneural::IRefObject
virtual ~IRefObject ()=default
 A protected destructor prevents accidental stack-allocation of IRefObjects or use with other smart pointer classes like std::unique_ptr.
 

Detailed Description

IPoolingLayer is an optional interface implemented by pooling layers.

Member Function Documentation

◆ getKernelSize()

virtual NeuralResult nvneural::IPoolingLayer::getKernelSize ( std::size_t *  pKernelW,
std::size_t *  pKernelH 
) const
pure virtualnoexcept

Retrieves the kernel size for the W and H axes.

Parameters
pKernelWOptional pointer to a variable receiving the current kernel size for W
pKernelHOptional pointer to a variable receiving the current kernel size for H

◆ getPadding()

virtual NeuralResult nvneural::IPoolingLayer::getPadding ( std::size_t *  pStartW,
std::size_t *  pStartH,
std::size_t *  pEndW,
std::size_t *  pEndH 
) const
pure virtualnoexcept

Retrieves the start and end padding for the W and H axes.

Zero values indicate no padding for that component.

Parameters
pStartWOptional pointer to a variable receiving the current start padding for W
pStartHOptional pointer to a variable receiving the current start padding for H
pEndWOptional pointer to a variable receiving the current end padding for W
pEndHOptional pointer to a variable receiving the current end padding for H

◆ getStride()

virtual NeuralResult nvneural::IPoolingLayer::getStride ( std::size_t *  pStrideW,
std::size_t *  pStrideH 
) const
pure virtualnoexcept

Retrieves the operation stride for the W and H axes.

Parameters
pStrideWOptional pointer to a variable receiving the current stride for W
pStrideHOptional pointer to a variable receiving the current stride for H

◆ setEndPadding()

virtual NeuralResult nvneural::IPoolingLayer::setEndPadding ( std::size_t  endW,
std::size_t  endH 
)
pure virtualnoexcept

Sets the end padding along the W and H axes.

Zero values indicate no padding for that component.

Parameters
endWEnd padding for the W axis
endHEnd padding for the H axis

◆ setKernelSize()

virtual NeuralResult nvneural::IPoolingLayer::setKernelSize ( std::size_t  kernelW,
std::size_t  kernelH 
)
pure virtualnoexcept

Sets the kernel size for the W and H axes.

Parameters
kernelWKernel size for the W axis
kernelHKernel size for the H axis

◆ setPoolingType()

virtual NeuralResult nvneural::IPoolingLayer::setPoolingType ( PoolType  poolType)
pure virtualnoexcept

Sets the type of pooling operation.

Parameters
poolTypePooling operation to perform

◆ setStartPadding()

virtual NeuralResult nvneural::IPoolingLayer::setStartPadding ( std::size_t  startW,
std::size_t  startH 
)
pure virtualnoexcept

Sets the start padding along the W and H axes.

Zero values indicate no padding for that component.

Parameters
startWStart padding for the W axis
startHStart padding for the H axis

◆ setStride()

virtual NeuralResult nvneural::IPoolingLayer::setStride ( std::size_t  strideW,
std::size_t  strideH 
)
pure virtualnoexcept

Sets the operation stride for the W and H axes.

Parameters
strideWStride for the W axis
strideHStride for the H axis

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