|
25.11
|
#include <LayerWithParameters.hpp>
Public Types | |
| using | DescriptorType = Parameters |
| Public Types inherited from IConnectableLayer | |
| using | ConstantTensors = std::vector<std::reference_wrapper<std::shared_ptr<ConstTensorHandle>>> |
| using | ImmutableConstantTensors = std::vector<std::reference_wrapper<const std::shared_ptr<ConstTensorHandle>>> |
Public Member Functions | |
| const Parameters & | GetParameters () const override |
| If the layer has a descriptor return it. | |
| void | SerializeLayerParameters (ParameterStringifyFunction &fn) const override |
| Helper to serialize the layer parameters to string (currently used in DotSerializer and company). | |
| Public Member Functions inherited from Layer | |
| Layer (unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, const char *name) | |
| Layer (unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, DataLayout layout, const char *name) | |
| const std::string & | GetNameStr () const |
| const OutputHandler & | GetOutputHandler (unsigned int i=0) const |
| OutputHandler & | GetOutputHandler (unsigned int i=0) |
| ShapeInferenceMethod | GetShapeInferenceMethod () const |
| bool | GetAllowExpandedDims () const |
| const std::vector< InputSlot > & | GetInputSlots () const |
| const std::vector< OutputSlot > & | GetOutputSlots () const |
| std::vector< InputSlot >::iterator | BeginInputSlots () |
| std::vector< InputSlot >::iterator | EndInputSlots () |
| std::vector< OutputSlot >::iterator | BeginOutputSlots () |
| std::vector< OutputSlot >::iterator | EndOutputSlots () |
| bool | IsOutputUnconnected () |
| void | ResetPriority () const |
| LayerPriority | GetPriority () const |
| LayerType | GetType () const override |
| Returns the armnn::LayerType of this layer. | |
| DataType | GetDataType () const |
| const BackendId & | GetBackendId () const |
| void | SetBackendId (const BackendId &id) override |
| Set the backend of the IConnectableLayer. | |
| virtual std::unique_ptr< IWorkload > | CreateWorkload (const IWorkloadFactory &factory) const =0 |
| virtual void | CreateTensorHandles (const TensorHandleFactoryRegistry ®istry, const IWorkloadFactory &factory, const bool IsMemoryManaged=true) |
| virtual Layer * | Clone (Graph &graph) const =0 |
| Creates a dynamically-allocated copy of this layer. | |
| void | VerifyLayerConnections (unsigned int expectedConnections, const CheckLocation &location) const |
| virtual void | ValidateTensorShapesFromInputs ()=0 |
| std::vector< TensorShape > | InferOutputShapes (const std::vector< TensorShape > &inputShapes) const override |
| Infer the shape of the output(s) based on the provided input shape(s) | |
| virtual void | ReleaseConstantData () |
| template<typename Op> | |
| void | OperateOnConstantTensors (Op op) |
| const char * | GetName () const override |
| Returns the name of the layer. | |
| unsigned int | GetNumInputSlots () const override |
| Returns the number of connectable input slots. | |
| unsigned int | GetNumOutputSlots () const override |
| Returns the number of connectable output slots. | |
| const InputSlot & | GetInputSlot (unsigned int index) const override |
| Get a const input slot handle by slot index. | |
| InputSlot & | GetInputSlot (unsigned int index) override |
| Get the input slot handle by slot index. | |
| const OutputSlot & | GetOutputSlot (unsigned int index=0) const override |
| Get the const output slot handle by slot index. | |
| OutputSlot & | GetOutputSlot (unsigned int index=0) override |
| Get the output slot handle by slot index. | |
| void | SetGuid (LayerGuid guid) |
| LayerGuid | GetGuid () const final |
| Returns the unique id of the layer. | |
| void | AddRelatedLayerName (const std::string layerName) |
| const std::list< std::string > & | GetRelatedLayerNames () |
| virtual void | Reparent (Graph &dest, std::list< Layer * >::const_iterator iterator)=0 |
| void | BackendSelectionHint (Optional< BackendId > backend) final |
| Provide a hint for the optimizer as to which backend to prefer for this layer. | |
| Optional< BackendId > | GetBackendHint () const |
| void | SetShapeInferenceMethod (ShapeInferenceMethod shapeInferenceMethod) |
| void | SetAllowExpandedDims (bool allowExpandedDims) |
| template<typename T> | |
| std::shared_ptr< T > | GetAdditionalInformation () const |
| void | SetAdditionalInfoForObject (const AdditionalInfoObjectPtr &additionalInfo) |
Protected Member Functions | |
| LayerWithParameters (unsigned int numInputSlots, unsigned int numOutputSlots, LayerType type, const Parameters ¶m, const char *name) | |
| ~LayerWithParameters ()=default | |
| template<typename QueueDescriptor> | |
| WorkloadInfo | PrepInfoAndDesc (QueueDescriptor &descriptor) const |
| Helper function to reduce duplication in *LayerCreateWorkload. | |
| void | ExecuteStrategy (IStrategy &strategy) const override |
| Apply a visitor to this layer. | |
| Layer::ImmutableConstantTensors | GetConnectedConstantAsInputTensors () const |
| Protected Member Functions inherited from Layer | |
| virtual | ~Layer ()=default |
| template<typename QueueDescriptor> | |
| void | CollectQueueDescriptorInputs (QueueDescriptor &descriptor, WorkloadInfo &info) const |
| template<typename QueueDescriptor> | |
| void | CollectQueueDescriptorOutputs (QueueDescriptor &descriptor, WorkloadInfo &info) const |
| void | ValidateAndCopyShape (const TensorShape &outputShape, const TensorShape &inferredShape, const ShapeInferenceMethod shapeInferenceMethod, const std::string &layerName, const unsigned int outputSlotIndex=0) |
| void | VerifyShapeInferenceType (const TensorShape &outputShape, ShapeInferenceMethod shapeInferenceMethod) |
| template<typename QueueDescriptor> | |
| WorkloadInfo | PrepInfoAndDesc (QueueDescriptor &descriptor) const |
| Helper function to reduce duplication in *LayerCreateWorkload. | |
| template<typename LayerType, typename ... Params> | |
| LayerType * | CloneBase (Graph &graph, Params &&... params) const |
| virtual ConstantTensors | GetConstantTensorsByRef () override final |
| virtual ImmutableConstantTensors | GetConstantTensorsByRef () const override |
| void | SetAdditionalInfo (QueueDescriptor &descriptor) const |
| Protected Member Functions inherited from IConnectableLayer | |
| ~IConnectableLayer () | |
| Objects are not deletable via the handle. | |
Protected Attributes | |
| Parameters | m_Param |
| The parameters for the layer (not including tensor-valued weights etc.). | |
| Protected Attributes inherited from Layer | |
| AdditionalInfoObjectPtr | m_AdditionalInfoObject |
| std::vector< OutputHandler > | m_OutputHandlers |
| ShapeInferenceMethod | m_ShapeInferenceMethod |
Definition at line 14 of file LayerWithParameters.hpp.
| using DescriptorType = Parameters |
Definition at line 17 of file LayerWithParameters.hpp.
|
inlineprotected |
Definition at line 30 of file LayerWithParameters.hpp.
References Layer::Layer(), and m_Param.
|
protecteddefault |
|
inlineoverrideprotectedvirtual |
Apply a visitor to this layer.
Reimplemented from Layer.
Reimplemented in LogicalBinaryLayer, LogSoftmaxLayer, LstmLayer, MeanLayer, NormalizationLayer, PadLayer, PermuteLayer, Pooling2dLayer, Pooling3dLayer, PreCompiledLayer, QLstmLayer, ReduceLayer, ReshapeLayer, ResizeLayer, SliceLayer, SoftmaxLayer, SpaceToBatchNdLayer, SpaceToDepthLayer, SplitterLayer, StackLayer, StandInLayer, StridedSliceLayer, TransposeConvolution2dLayer, TransposeLayer, and UnidirectionalSequenceLstmLayer.
Definition at line 54 of file LayerWithParameters.hpp.
References IStrategy::ExecuteStrategy(), Layer::GetName(), and GetParameters().
|
inlineprotected |
Definition at line 59 of file LayerWithParameters.hpp.
References armnn::Constant, InputSlot::GetConnectedOutputSlot(), Layer::GetInputSlot(), Layer::GetNumInputSlots(), OutputSlot::GetOwningLayer(), and armnnUtils::GetTensorInfo().
|
inlineoverridevirtual |
If the layer has a descriptor return it.
The base descriptor can then be cast to the correct descriptor class. If the layer has no associated descriptor a struct of type NullDescriptor will be returned. Note: NullDescriptors can be detected because they return true when the BaseDescriptor IsNull function is invoked.
Reimplemented from Layer.
Definition at line 19 of file LayerWithParameters.hpp.
References m_Param.
Referenced by ExecuteStrategy(), armnn::optimizations::pad_fold::FoldPadIntoLayer2dImpl(), ClBackend::OptimizeSubgraphView(), NeonBackend::OptimizeSubgraphView(), RefBackend::OptimizeSubgraphView(), armnn::RemoveReshapeLayer(), and PermuteDepthwiseConv2dWeightsImpl::~PermuteDepthwiseConv2dWeightsImpl().
|
inlineprotected |
Helper function to reduce duplication in *LayerCreateWorkload.
Definition at line 44 of file LayerWithParameters.hpp.
References Layer::GetAllowExpandedDims(), QueueDescriptor::m_AllowExpandedDims, m_Param, and Layer::PrepInfoAndDesc().
|
inlineoverridevirtual |
Helper to serialize the layer parameters to string (currently used in DotSerializer and company).
Reimplemented from Layer.
Definition at line 23 of file LayerWithParameters.hpp.
References m_Param, StringifyLayerParameters< LayerParameter >::Serialize(), and Layer::SerializeLayerParameters().
Referenced by Convolution2dLayer::SerializeLayerParameters(), Convolution3dLayer::SerializeLayerParameters(), and DepthwiseConvolution2dLayer::SerializeLayerParameters().
|
protected |
The parameters for the layer (not including tensor-valued weights etc.).
Definition at line 52 of file LayerWithParameters.hpp.
Referenced by GetParameters(), LayerWithParameters(), PrepInfoAndDesc(), and SerializeLayerParameters().