TensorRT 10.8.0
nvinfer1::ICumulativeLayer Class Reference

Layer that represents a cumulative operation across a tensor. More...

#include <NvInfer.h>

Inheritance diagram for nvinfer1::ICumulativeLayer:
nvinfer1::ILayer nvinfer1::INoCopy

Public Member Functions

bool setOperation (CumulativeOperation op) noexcept
 Set the cumulative operation for the layer. More...
 
CumulativeOperation getOperation () const noexcept
 Get the cumulative operation for the layer. More...
 
void setExclusive (bool exclusive) noexcept
 Set whether it is an exclusive accumulation or inclusive accumulation. More...
 
bool getExclusive () const noexcept
 Get whether it is exclusive accumulation or inclusive accumulation. More...
 
void setReverse (bool reverse) noexcept
 Specify whether the cumulative operation should be applied backward. More...
 
bool getReverse () const noexcept
 Get the boolean that specifies whether the cumulative operation should be applied backward. More...
 
- Public Member Functions inherited from nvinfer1::ILayer
LayerType getType () const noexcept
 Return the type of a layer. More...
 
void setName (char const *name) noexcept
 Set the name of a layer. More...
 
char const * getName () const noexcept
 Return the name of a layer. More...
 
int32_t getNbInputs () const noexcept
 Get the number of inputs of a layer. More...
 
ITensorgetInput (int32_t index) const noexcept
 Get the layer input corresponding to the given index. More...
 
int32_t getNbOutputs () const noexcept
 Get the number of outputs of a layer. More...
 
ITensorgetOutput (int32_t index) const noexcept
 Get the layer output corresponding to the given index. More...
 
void setInput (int32_t index, ITensor &tensor) noexcept
 Replace an input of this layer with a specific tensor. More...
 
void setPrecision (DataType dataType) noexcept
 Set the preferred or required computational precision of this layer in a weakly-typed network. More...
 
DataType getPrecision () const noexcept
 get the computational precision of this layer More...
 
bool precisionIsSet () const noexcept
 whether the computational precision has been set for this layer More...
 
void resetPrecision () noexcept
 reset the computational precision for this layer More...
 
void setOutputType (int32_t index, DataType dataType) noexcept
 Set the output type of this layer in a weakly-typed network. More...
 
DataType getOutputType (int32_t index) const noexcept
 get the output type of this layer More...
 
bool outputTypeIsSet (int32_t index) const noexcept
 whether the output type has been set for this layer More...
 
void resetOutputType (int32_t index) noexcept
 reset the output type for this layer More...
 
void setMetadata (char const *metadata) noexcept
 Set the metadata for this layer. More...
 
char const * getMetadata () const noexcept
 Get the metadata of the layer. More...
 

Protected Member Functions

virtual ~ICumulativeLayer () noexcept=default
 
- Protected Member Functions inherited from nvinfer1::ILayer
virtual ~ILayer () noexcept=default
 
- Protected Member Functions inherited from nvinfer1::INoCopy
 INoCopy ()=default
 
virtual ~INoCopy ()=default
 
 INoCopy (INoCopy const &other)=delete
 
INoCopyoperator= (INoCopy const &other)=delete
 
 INoCopy (INoCopy &&other)=delete
 
INoCopyoperator= (INoCopy &&other)=delete
 

Protected Attributes

apiv::VCumulativeLayer * mImpl
 
- Protected Attributes inherited from nvinfer1::ILayer
apiv::VLayer * mLayer
 

Detailed Description

Layer that represents a cumulative operation across a tensor.

It computes successive reductions across an axis of a tensor. The output always has the same shape as the input.

If the reduction operation is summation, then this is also known as prefix-sum or cumulative sum.

The operation has forward vs. reverse variants, and inclusive vs. exclusive variants.

For example, let the input be a vector x of length n and the output be vector y. Then y[j] = sum(x[...]) where ... denotes a sequence of indices from this table:

      | forward   | reverse

-------—|--------—| ------— inclusive | 0..j | j..n-1 exclusive | 0..j-1 | j+1..n-1

For multidimensional tensors, the reductions apply across a specified axis. For example, given a 2D input, a forward inclusive cumulative operation across axis 0 generates cumulative sums within each column.

Warning
Do not inherit from this class, as doing so will break forward-compatibility of the API and ABI.

Constructor & Destructor Documentation

◆ ~ICumulativeLayer()

virtual nvinfer1::ICumulativeLayer::~ICumulativeLayer ( )
protectedvirtualdefaultnoexcept

Member Function Documentation

◆ getExclusive()

bool nvinfer1::ICumulativeLayer::getExclusive ( ) const
inlinenoexcept

Get whether it is exclusive accumulation or inclusive accumulation.

Returns
Whether the operation will exclude the element at the current index
See also
setExclusive

◆ getOperation()

CumulativeOperation nvinfer1::ICumulativeLayer::getOperation ( ) const
inlinenoexcept

Get the cumulative operation for the layer.

Returns
The reduction operation to be performed
See also
setOperation(), CumulativeOperation

◆ getReverse()

bool nvinfer1::ICumulativeLayer::getReverse ( ) const
inlinenoexcept

Get the boolean that specifies whether the cumulative operation should be applied backward.

Returns
Whether the cumulative will run in the reverse direction from the last element
See also
setReverse

◆ setExclusive()

void nvinfer1::ICumulativeLayer::setExclusive ( bool  exclusive)
inlinenoexcept

Set whether it is an exclusive accumulation or inclusive accumulation.

Parameters
exclusiveWhether the operation will exclude the element at the current index
See also
getExclusive

◆ setOperation()

bool nvinfer1::ICumulativeLayer::setOperation ( CumulativeOperation  op)
inlinenoexcept

Set the cumulative operation for the layer.

Parameters
opThe reduction operation to be performed
Returns
Whether op is valid and the operation successfully set
See also
getOperation(), CumulativeOperation

◆ setReverse()

void nvinfer1::ICumulativeLayer::setReverse ( bool  reverse)
inlinenoexcept

Specify whether the cumulative operation should be applied backward.

Parameters
reverseWhether the cumulative will run in the reverse direction from the last element
See also
getReverse

Member Data Documentation

◆ mImpl

apiv::VCumulativeLayer* nvinfer1::ICumulativeLayer::mImpl
protected

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

  Copyright © 2024 NVIDIA Corporation
  Privacy Policy | Manage My Privacy | Do Not Sell or Share My Data | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact