ArmNN
 20.02
IConnectableLayer Class Referenceabstract

Interface for a layer that is connectable to other layers via InputSlots and OutputSlots. More...

#include <INetwork.hpp>

Inheritance diagram for IConnectableLayer:
Layer AbsLayer BindableLayer ConstantLayer ConvertFp16ToFp32Layer ConvertFp32ToFp16Layer DebugLayer DequantizeLayer ElementwiseBaseLayer FloorLayer GatherLayer LayerWithParameters< Parameters > MemCopyLayer MemImportLayer MergeLayer PreluLayer QuantizedLstmLayer QuantizeLayer RsqrtLayer SwitchLayer LayerWithParameters< ActivationDescriptor > LayerWithParameters< ArgMinMaxDescriptor > LayerWithParameters< BatchNormalizationDescriptor > LayerWithParameters< BatchToSpaceNdDescriptor > LayerWithParameters< ComparisonDescriptor > LayerWithParameters< Convolution2dDescriptor > LayerWithParameters< DepthToSpaceDescriptor > LayerWithParameters< DepthwiseConvolution2dDescriptor > LayerWithParameters< DetectionPostProcessDescriptor > LayerWithParameters< ElementwiseUnaryDescriptor > LayerWithParameters< FakeQuantizationDescriptor > LayerWithParameters< FullyConnectedDescriptor > LayerWithParameters< InstanceNormalizationDescriptor > LayerWithParameters< L2NormalizationDescriptor > LayerWithParameters< LogSoftmaxDescriptor > LayerWithParameters< LstmDescriptor > LayerWithParameters< MeanDescriptor > LayerWithParameters< NormalizationDescriptor > LayerWithParameters< OriginsDescriptor > LayerWithParameters< PadDescriptor > LayerWithParameters< PermuteDescriptor > LayerWithParameters< Pooling2dDescriptor > LayerWithParameters< PreCompiledDescriptor > LayerWithParameters< ReshapeDescriptor > LayerWithParameters< ResizeDescriptor > LayerWithParameters< SliceDescriptor > LayerWithParameters< SoftmaxDescriptor > LayerWithParameters< SpaceToBatchNdDescriptor > LayerWithParameters< SpaceToDepthDescriptor > LayerWithParameters< StackDescriptor > LayerWithParameters< StandInDescriptor > LayerWithParameters< StridedSliceDescriptor > LayerWithParameters< TransposeConvolution2dDescriptor > LayerWithParameters< TransposeDescriptor > LayerWithParameters< ViewsDescriptor >

Public Member Functions

virtual const char * GetName () const =0
 Returns the name of the layer. More...
 
virtual unsigned int GetNumInputSlots () const =0
 Returns the number of connectable input slots. More...
 
virtual unsigned int GetNumOutputSlots () const =0
 Returns the number of connectable output slots. More...
 
virtual const IInputSlotGetInputSlot (unsigned int index) const =0
 Get a const input slot handle by slot index. More...
 
virtual IInputSlotGetInputSlot (unsigned int index)=0
 Get the input slot handle by slot index. More...
 
virtual const IOutputSlotGetOutputSlot (unsigned int index) const =0
 Get the const output slot handle by slot index. More...
 
virtual IOutputSlotGetOutputSlot (unsigned int index)=0
 Get the output slot handle by slot index. More...
 
virtual std::vector< TensorShapeInferOutputShapes (const std::vector< TensorShape > &inputShapes) const =0
 Infer the shape of the output(s) based on the provided input shape(s) More...
 
virtual LayerGuid GetGuid () const =0
 Returns the unique id of the layer. More...
 
virtual void Accept (ILayerVisitor &visitor) const =0
 Apply a visitor to this layer. More...
 
virtual void BackendSelectionHint (Optional< BackendId > backend)=0
 Provide a hint for the optimizer as to which backend to prefer for this layer. More...
 

Protected Member Functions

 ~IConnectableLayer ()
 Objects are not deletable via the handle. More...
 

Detailed Description

Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.

Definition at line 61 of file INetwork.hpp.

Constructor & Destructor Documentation

◆ ~IConnectableLayer()

~IConnectableLayer ( )
inlineprotected

Objects are not deletable via the handle.

Definition at line 98 of file INetwork.hpp.

98 {}

Member Function Documentation

◆ Accept()

◆ BackendSelectionHint()

virtual void BackendSelectionHint ( Optional< BackendId backend)
pure virtual

Provide a hint for the optimizer as to which backend to prefer for this layer.

Implemented in Layer.

◆ GetGuid()

◆ GetInputSlot() [1/2]

virtual const IInputSlot& GetInputSlot ( unsigned int  index) const
pure virtual

Get a const input slot handle by slot index.

Implemented in Layer.

Referenced by CaffeParserBase::AddConvLayerWithSplits(), BOOST_AUTO_TEST_CASE(), armnn::BOOST_AUTO_TEST_CASE(), armnnTfParser::CalculatePaddedOutputTensorInfo(), armnn::CompleteLeakyReluNetwork(), Connect(), armnnTfParser::ConvertTfTensorDataType(), OnnxParser::CreateNetworkFromString(), armnn::CreateNetworkWithActivationLayer(), armnn::CreateNetworkWithFullyConnectedLayer(), armnn::CreateNetworkWithInputOutputLayers(), armnn::CreateNetworkWithSoftmaxLayer(), armnn::CreateStartOfLeakyReluNetwork(), DynamicQuantizationVisitor::DynamicQuantizationVisitor(), Deserializer::GetNetworkOutputBindingInfo(), TfLiteParser::GetOutputTensorIds(), GetSoftmaxProfilerJson(), SerializerVisitor::GetVersionTable(), armnnTfParser::OutputShapeOfExpandDims(), TfLiteParser::OutputShapeOfReshape(), armnnTfParser::OutputShapeOfSqueeze(), CaffeParserBase::ParseBatchNormLayer(), CaffeParserBase::ParseConcatLayer(), CaffeParserBase::ParseEltwiseLayer(), CaffeParserBase::ParseInnerProductLayer(), CaffeParserBase::ParseLRNLayer(), CaffeParserBase::ParsePoolingLayer(), CaffeParserBase::ParseReluLayer(), CaffeParserBase::ParseScaleLayer(), CaffeParserBase::ParseSoftmaxLayer(), armnn::PreserveTypeTestImpl(), QuantizerVisitor::QuantizerVisitor(), StaticRangeVisitor::StaticRangeVisitor(), armnn::TestQuantizeConvolution2d(), armnn::TestQuantizeDepthwiseConvolution2d(), armnn::TestQuantizeTransposeConvolution2d(), TfLiteParser::TfLiteParser(), TfParser::TfParser(), VerifyPostOptimisationStructureTestImpl(), DynamicQuantizationVisitor::VisitConcatLayer(), StaticRangeVisitor::VisitConcatLayer(), QuantizerVisitor::VisitInputLayer(), and QuantizerVisitor::VisitOutputLayer().

◆ GetInputSlot() [2/2]

virtual IInputSlot& GetInputSlot ( unsigned int  index)
pure virtual

Get the input slot handle by slot index.

Implemented in Layer.

◆ GetName()

◆ GetNumInputSlots()

◆ GetNumOutputSlots()

◆ GetOutputSlot() [1/2]

virtual const IOutputSlot& GetOutputSlot ( unsigned int  index) const
pure virtual

Get the const output slot handle by slot index.

Implemented in Layer.

Referenced by CaffeParserBase::AddConvLayerWithSplits(), BOOST_AUTO_TEST_CASE(), armnn::BOOST_AUTO_TEST_CASE(), armnnTfParser::CalculatePaddedOutputTensorInfo(), armnn::CompleteLeakyReluNetwork(), Connect(), armnnTfParser::ConvertTfTensorDataType(), TfLiteParser::CreateNetworkFromBinary(), OnnxParser::CreateNetworkFromString(), armnn::CreateNetworkWithActivationLayer(), armnn::CreateNetworkWithFullyConnectedLayer(), armnn::CreateNetworkWithInputOutputLayers(), armnn::CreateNetworkWithSoftmaxLayer(), armnn::CreateStartOfLeakyReluNetwork(), Deserializer::GetLstmDescriptor(), Deserializer::GetNetworkOutputBindingInfo(), Deserializer::GetNormalizationDescriptor(), armnnDeserializer::GetOriginsDescriptor(), TfLiteParser::GetOutputTensorIds(), Deserializer::GetPoolingDescriptor(), GetSoftmaxProfilerJson(), SerializerVisitor::GetVersionTable(), armnnTfParser::OutputShapeOfExpandDims(), Deserializer::OutputShapeOfReshape(), TfLiteParser::OutputShapeOfReshape(), TfLiteParser::OutputShapeOfSqueeze(), armnnTfParser::OutputShapeOfSqueeze(), CaffeParserBase::ParseBatchNormLayer(), CaffeParserBase::ParseConcatLayer(), CaffeParserBase::ParseEltwiseLayer(), CaffeParserBase::ParseInnerProductLayer(), CaffeParserBase::ParseLRNLayer(), CaffeParserBase::ParsePoolingLayer(), CaffeParserBase::ParseReluLayer(), CaffeParserBase::ParseScaleLayer(), CaffeParserBase::ParseSoftmaxLayer(), armnn::PreserveTypeTestImpl(), QuantizerVisitor::QuantizerVisitor(), armnn::TestQuantizeConvolution2d(), armnn::TestQuantizeDepthwiseConvolution2d(), armnn::TestQuantizeTransposeConvolution2d(), TfLiteParser::TfLiteParser(), TfParser::TfParser(), VerifyPostOptimisationStructureTestImpl(), InputLayerVisitor::VisitInputLayer(), QuantizerVisitor::VisitInputLayer(), armnn::VisitLayersTopologically(), and QuantizerVisitor::VisitOutputLayer().

◆ GetOutputSlot() [2/2]

virtual IOutputSlot& GetOutputSlot ( unsigned int  index)
pure virtual

Get the output slot handle by slot index.

Implemented in Layer.

◆ InferOutputShapes()


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