|
TensorRT
7.1.3.0
|
#include <NvInfer.h>
Public Member Functions | |
| virtual LoopOutput | getLoopOutput () const noexcept=0 |
| virtual void | setAxis (int axis) noexcept=0 |
| Set where to insert the contenation axis. Ignored if getLoopOutput() is kLAST_VALUE. More... | |
| virtual int | getAxis () const noexcept=0 |
| Get axis being concatenated over. | |
| void | setInput (int index, ITensor &tensor) _TENSORRT_OVERRIDE=0 |
| Append or replace an input of this layer with a specific tensor. More... | |
Public Member Functions inherited from nvinfer1::ILoopBoundaryLayer | |
| virtual ILoop * | getLoop () const noexcept=0 |
| Return pointer to ILoop associated with this boundary layer. | |
Public Member Functions inherited from nvinfer1::ILayer | |
| virtual LayerType | getType () const =0 |
| Return the type of a layer. More... | |
| virtual void | setName (const char *name)=0 |
| Set the name of a layer. More... | |
| virtual const char * | getName () const =0 |
| Return the name of a layer. More... | |
| virtual int | getNbInputs () const =0 |
| Get the number of inputs of a layer. | |
| virtual ITensor * | getInput (int index) const =0 |
| Get the layer input corresponding to the given index. More... | |
| virtual int | getNbOutputs () const =0 |
| Get the number of outputs of a layer. | |
| virtual ITensor * | getOutput (int index) const =0 |
| Get the layer output corresponding to the given index. More... | |
| virtual void | setPrecision (DataType dataType)=0 |
| Set the computational precision of this layer. More... | |
| virtual DataType | getPrecision () const =0 |
| get the computational precision of this layer More... | |
| virtual bool | precisionIsSet () const =0 |
| whether the computational precision has been set for this layer More... | |
| virtual void | resetPrecision ()=0 |
| reset the computational precision for this layer More... | |
| virtual void | setOutputType (int index, DataType dataType)=0 |
| Set the output type of this layer. More... | |
| virtual DataType | getOutputType (int index) const =0 |
| get the output type of this layer More... | |
| virtual bool | outputTypeIsSet (int index) const =0 |
| whether the output type has been set for this layer More... | |
| virtual void | resetOutputType (int index)=0 |
| reset the output type for this layer More... | |
An ILoopOutputLayer is the sole way to get output from a loop.
The first input tensor must be defined inside the loop; the output tensor is outside the loop. The second input tensor, if present, must be defined outside the loop.
If getLoopOutput() is kLAST_VALUE, a single input must be provided, and that input must from a IRecurrenceLayer in the same loop.
If getLoopOutput() is kCONCATENATE or kREVERSE, a second input must be provided. The second input must be a scalar “shape tensor”, defined before the loop commences, that specifies the concatenation length of the output.
The output tensor has j more dimensions than the input tensor, where j == 0 if getLoopOutput() is kLAST_VALUE j == 1 if getLoopOutput() is kCONCATENATE or kREVERSE.
|
pure virtualnoexcept |
Set where to insert the contenation axis. Ignored if getLoopOutput() is kLAST_VALUE.
For example, if the input tensor has dimensions [b,c,d], and getLoopOutput() is kCONCATENATE, the output has four dimensions. Let a be the value of the second input. setAxis(0) causes the output to have dimensions [a,b,c,d]. setAxis(1) causes the output to have dimensions [b,a,c,d]. setAxis(2) causes the output to have dimensions [b,c,a,d]. setAxis(3) causes the output to have dimensions [b,c,d,a]. Default is axis is 0.
|
pure virtual |
Append or replace an input of this layer with a specific tensor.
| index | the index of the input to modify. |
| tensor | the new input tensor Sets the input tensor for the given index. The index must be 0 for a kLAST_VALUE loop output layer. Loop output layer is converted to a kCONCATENATE or kREVERSE loop output layer by calling setInput with an index 1. A kCONCATENATE or kREVERSE loop output layer cannot be converted back to a kLAST_VALUE loop output layer. |
For a kCONCATENATE or kREVERSE loop output layer, the values 0 and 1 are valid. The indices in the kCONCATENATE or kREVERSE cases are as follows:
Index | Description 0 | Contribution to the output tensor. The contribution must come from inside the loop. 1 | The concatenation length scalar value, must come from outside the loop, as a 0D Int32 shape tensor.
If this function is called with a value 1, then the function getNbInputs() changes from returning 1 to 2.
Implements nvinfer1::ILayer.