24.02
|
#include <Layer.hpp>
Additional Inherited Members | |
Protected Member Functions inherited from IOutputSlot | |
~IOutputSlot () | |
Not user deletable. More... | |
|
inlineexplicit |
|
delete |
|
default |
|
inline |
|
overridevirtual |
Implements IOutputSlot.
Definition at line 159 of file Layer.cpp.
References ARMNN_ASSERT_MSG, Layer::GetNumOutputSlots(), Layer::GetOutputSlot(), and OutputSlot::GetOwningLayer().
Referenced by DebugLayer::CreateWorkload().
|
inlineoverridevirtual |
int Connect | ( | InputSlot & | destination | ) |
Definition at line 112 of file Layer.cpp.
References InputSlot::SetConnection(), and armnn::Undefined.
Referenced by armnn::ApplyBackendOptimizations(), OutputSlot::Connect(), armnn::optimizations::pad_fold::FoldPadIntoLayer2dImpl(), InputSlot::Insert(), Graph::InsertNewLayer(), OutputSlot::MoveAllConnections(), and FuseBatchNorm< ConvLayer, ArmnnType, T >::Run().
|
inlineoverridevirtual |
Implements IOutputSlot.
Definition at line 171 of file Layer.hpp.
References OutputSlot::Disconnect().
void Disconnect | ( | InputSlot & | slot | ) |
Definition at line 120 of file Layer.cpp.
References InputSlot::SetConnection().
Referenced by armnn::ApplyBackendOptimizations(), OutputSlot::Disconnect(), OutputSlot::DisconnectAll(), armnn::optimizations::pad_fold::FoldPadIntoLayer2dImpl(), InputSlot::Insert(), OutputSlot::MoveAllConnections(), FuseBatchNorm< ConvLayer, ArmnnType, T >::Run(), and InputSlot::~InputSlot().
void DisconnectAll | ( | ) |
Definition at line 136 of file Layer.cpp.
References OutputSlot::Disconnect(), OutputSlot::GetConnection(), and OutputSlot::GetNumConnections().
Referenced by OutputSlot::~OutputSlot().
|
overridevirtual |
Implements IOutputSlot.
Definition at line 75 of file Layer.cpp.
Referenced by armnn::ApplyBackendOptimizations(), armnn::BuildAddMulAddTensorInfoLists(), armnn::ConnectedToLayerType(), armnn::ConnectedToLayerWithNCHW(), OutputSlot::DisconnectAll(), GenerateUniqueOutputName(), OutputSlot::MoveAllConnections(), OutputSlot::operator==(), armnn::RemoveReshapeLayer(), and DeleteBroadcastToImpl::Run().
|
overridevirtual |
Implements IOutputSlot.
|
inline |
Definition at line 145 of file Layer.hpp.
Referenced by Graph::AddCompatibilityLayers(), armnn::CalculateSlotOption(), armnn::CalculateSlotOptionForInput(), SquashEqualSiblingsImpl< Comparable >::Run(), and armnn::SelectTensorHandleStrategy().
|
inline |
Definition at line 146 of file Layer.hpp.
Referenced by Graph::AddCompatibilityLayers().
EdgeStrategy GetEdgeStrategyForConnection | ( | unsigned int | connectionIdx | ) | const |
|
inlineoverridevirtual |
Implements IOutputSlot.
Definition at line 158 of file Layer.hpp.
Referenced by armnn::ApplyBackendOptimizations(), armnn::BuildAddMulAddTensorInfoLists(), OutputSlot::DisconnectAll(), OutputSlot::MoveAllConnections(), OutputSlot::operator==(), RefBackend::OptimizeSubgraphView(), ClBackend::OptimizeSubgraphView(), OptimizeConsecutiveReshapesImpl::Run(), MoveTransposeUpImpl::Run(), MovePermuteUpImpl::Run(), SquashEqualSiblingsImpl< Comparable >::Run(), and AddBroadcastReshapeLayerImpl::Run().
|
inline |
|
inline |
Definition at line 139 of file Layer.hpp.
Referenced by OutputSlot::GetTensorInfo(), OutputSlot::IsTensorInfoSet(), OutputSlot::MoveAllConnections(), DeleteBroadcastToImpl::Run(), and OutputSlot::SetTensorInfo().
|
overridevirtual |
Implements IOutputSlot.
|
overridevirtual |
Implements IOutputSlot.
|
inline |
Definition at line 132 of file Layer.hpp.
Referenced by armnn::BuildAddMulAddTensorInfoLists(), OutputSlot::CalculateIndexOnOwner(), armnn::CalculateSlotOption(), armnn::CalculateSlotOptionForInput(), armnn::ConnectedToLayerType(), armnn::ConnectedToLayerWithNCHW(), ConvertActivationToTosaOperator(), ConvertAvgPool2DIgnoreValueToTosaOperator(), ConvertConcatToTosaOperator(), ConvertConv2dToTosaOperator(), ConvertElementwiseBinaryToTosaOperator(), ConvertElementwiseUnaryOperator(), ConvertPooling2DToTosaOperator(), ConvertQuantizeToTosaOperator(), ConvertReshapeToTosaOperator(), ConvertResizeToTosaOperator(), ConvertSliceToTosaOperator(), ConvertTransposeConv2dToTosaOperator(), ConvertTransposeToTosaOperator(), DebugLayer::CreateWorkload(), armnn::optimizations::pad_fold::FoldPadIntoLayer2dImpl(), LayerWithParameters< StridedSliceDescriptor >::GetConnectedConstantAsInputTensors(), OutputSlot::GetOwningLayerGuid(), Layer::GetPriority(), Graph::InsertNewLayer(), OutputSlot::IsTensorInfoSet(), RefBackend::OptimizeSubgraphView(), ClBackend::OptimizeSubgraphView(), armnn::RemoveReshapeLayer(), OptimizeConsecutiveReshapesImpl::Run(), ConvertConstPermuteLayersToConstLayers::Run(), OptimizeInverseConversionsImpl::Run(), ConvertConstDequantisationLayersToConstLayersImpl::Run(), PermuteAndBatchToSpaceAsDepthToSpaceImpl< PermuteType >::Run(), OptimizeInversePermutesImpl< PermuteType >::Run(), MoveTransposeUpImpl::Run(), MovePermuteUpImpl::Run(), AddBroadcastReshapeLayerImpl::Run(), FuseBatchNorm< ConvLayer, ArmnnType, T >::Run(), and Graph::SerializeToDot().
|
overridevirtual |
Implements IOutputSlot.
Definition at line 195 of file Layer.cpp.
References Layer::GetGuid(), and OutputSlot::GetOwningLayer().
ITensorHandleFactory::FactoryId GetTensorHandleFactoryId | ( | ) | const |
Definition at line 205 of file Layer.cpp.
Referenced by Graph::AddCompatibilityLayers(), SplitterLayer::CreateTensorHandles(), ConcatLayer::CreateTensorHandles(), Layer::CreateTensorHandles(), LoadedNetwork::ImportInputs(), and LoadedNetwork::ImportOutputs().
|
overridevirtual |
Implements IOutputSlot.
Definition at line 92 of file Layer.cpp.
References OutputSlot::GetOutputHandler(), and OutputHandler::GetTensorInfo().
Referenced by armnn::BuildAddMulAddTensorInfoLists(), armnn::CheckScaleSetOnQuantizedType(), armnn::optimizations::pad_fold::FoldPadIntoLayer2dImpl(), Layer::GetDataType(), armnn::GetLayerInOutDatatype(), LoadedNetwork::ImportInputs(), InputSlot::Insert(), armnn::InsertConvertFp16ToFp32LayersBefore(), armnn::InsertConvertFp32ToFp16LayersAfter(), armnn::InsertDebugLayerAfter(), OutputSlot::MoveAllConnections(), RefBackend::OptimizeSubgraphView(), NeonBackend::OptimizeSubgraphView(), ClBackend::OptimizeSubgraphView(), GpuFsaBackend::OptimizeSubgraphView(), armnn::RemoveReshapeLayer(), DeleteBroadcastToImpl::Run(), OptimizeConsecutiveReshapesImpl::Run(), PermuteAndBatchToSpaceAsDepthToSpaceImpl< PermuteType >::Run(), AddBroadcastReshapeLayerImpl::Run(), FuseBatchNorm< ConvLayer, ArmnnType, T >::Run(), Graph::SerializeToDot(), Layer::ValidateAndCopyShape(), ElementwiseBaseLayer::ValidateTensorShapesFromInputs(), QuantizeLayer::ValidateTensorShapesFromInputs(), ActivationLayer::ValidateTensorShapesFromInputs(), ChannelShuffleLayer::ValidateTensorShapesFromInputs(), ConvertFp32ToFp16Layer::ValidateTensorShapesFromInputs(), RankLayer::ValidateTensorShapesFromInputs(), FillLayer::ValidateTensorShapesFromInputs(), ConvertFp16ToFp32Layer::ValidateTensorShapesFromInputs(), ShapeLayer::ValidateTensorShapesFromInputs(), StackLayer::ValidateTensorShapesFromInputs(), SwitchLayer::ValidateTensorShapesFromInputs(), InstanceNormalizationLayer::ValidateTensorShapesFromInputs(), TransposeLayer::ValidateTensorShapesFromInputs(), MergeLayer::ValidateTensorShapesFromInputs(), MemImportLayer::ValidateTensorShapesFromInputs(), L2NormalizationLayer::ValidateTensorShapesFromInputs(), DebugLayer::ValidateTensorShapesFromInputs(), MemCopyLayer::ValidateTensorShapesFromInputs(), NormalizationLayer::ValidateTensorShapesFromInputs(), BatchToSpaceNdLayer::ValidateTensorShapesFromInputs(), PermuteLayer::ValidateTensorShapesFromInputs(), Pooling2dLayer::ValidateTensorShapesFromInputs(), DequantizeLayer::ValidateTensorShapesFromInputs(), Pooling3dLayer::ValidateTensorShapesFromInputs(), CastLayer::ValidateTensorShapesFromInputs(), AbsLayer::ValidateTensorShapesFromInputs(), ResizeLayer::ValidateTensorShapesFromInputs(), FakeQuantizationLayer::ValidateTensorShapesFromInputs(), RsqrtLayer::ValidateTensorShapesFromInputs(), SliceLayer::ValidateTensorShapesFromInputs(), SoftmaxLayer::ValidateTensorShapesFromInputs(), FloorLayer::ValidateTensorShapesFromInputs(), MeanLayer::ValidateTensorShapesFromInputs(), LogSoftmaxLayer::ValidateTensorShapesFromInputs(), PadLayer::ValidateTensorShapesFromInputs(), ReshapeLayer::ValidateTensorShapesFromInputs(), FullyConnectedLayer::ValidateTensorShapesFromInputs(), Convolution2dLayer::ValidateTensorShapesFromInputs(), Convolution3dLayer::ValidateTensorShapesFromInputs(), DepthwiseConvolution2dLayer::ValidateTensorShapesFromInputs(), BroadcastToLayer::ValidateTensorShapesFromInputs(), GatherNdLayer::ValidateTensorShapesFromInputs(), TileLayer::ValidateTensorShapesFromInputs(), ElementwiseBinaryLayer::ValidateTensorShapesFromInputs(), BatchMatMulLayer::ValidateTensorShapesFromInputs(), ReverseV2Layer::ValidateTensorShapesFromInputs(), ArgMinMaxLayer::ValidateTensorShapesFromInputs(), ElementwiseUnaryLayer::ValidateTensorShapesFromInputs(), GatherLayer::ValidateTensorShapesFromInputs(), DetectionPostProcessLayer::ValidateTensorShapesFromInputs(), StridedSliceLayer::ValidateTensorShapesFromInputs(), ReduceLayer::ValidateTensorShapesFromInputs(), SpaceToDepthLayer::ValidateTensorShapesFromInputs(), SpaceToBatchNdLayer::ValidateTensorShapesFromInputs(), LogicalBinaryLayer::ValidateTensorShapesFromInputs(), DepthToSpaceLayer::ValidateTensorShapesFromInputs(), ComparisonLayer::ValidateTensorShapesFromInputs(), PreluLayer::ValidateTensorShapesFromInputs(), TransposeConvolution2dLayer::ValidateTensorShapesFromInputs(), SplitterLayer::ValidateTensorShapesFromInputs(), UnidirectionalSequenceLstmLayer::ValidateTensorShapesFromInputs(), LstmLayer::ValidateTensorShapesFromInputs(), ConcatLayer::ValidateTensorShapesFromInputs(), BatchNormalizationLayer::ValidateTensorShapesFromInputs(), QuantizedLstmLayer::ValidateTensorShapesFromInputs(), and QLstmLayer::ValidateTensorShapesFromInputs().
|
overridevirtual |
Implements IOutputSlot.
Definition at line 97 of file Layer.cpp.
References OutputSlot::GetOutputHandler(), OutputSlot::GetOwningLayer(), armnn::InferAndValidate, OutputHandler::IsTensorInfoSet(), and Layer::ValidateTensorShapesFromInputs().
Referenced by AddBroadcastReshapeLayerImpl::Run(), and OutputSlot::ValidateTensorShape().
void MoveAllConnections | ( | OutputSlot & | destination | ) |
Moves all connections to another OutputSlot.
Definition at line 145 of file Layer.cpp.
References ARMNN_ASSERT_MSG, OutputSlot::Connect(), OutputSlot::Disconnect(), OutputSlot::GetConnection(), OutputSlot::GetNumConnections(), OutputSlot::GetOutputHandler(), OutputSlot::GetTensorInfo(), OutputHandler::SetTensorInfo(), and armnn::Undefined.
Referenced by Graph::InsertNewLayer(), TransposeAsReshapeImpl::Run(), PermuteAsReshapeImpl::Run(), DeleteBroadcastToImpl::Run(), OptimizeConsecutiveReshapesImpl::Run(), OptimizeInverseConversionsImpl::Run(), and FuseBatchNorm< ConvLayer, ArmnnType, T >::Run().
|
delete |
|
delete |
bool operator== | ( | const OutputSlot & | other | ) | const |
Definition at line 172 of file Layer.cpp.
References OutputSlot::GetConnection(), and OutputSlot::GetNumConnections().
void SetEdgeStrategy | ( | unsigned int | connectionIndex, |
EdgeStrategy | strategy | ||
) |
Definition at line 210 of file Layer.cpp.
Referenced by Graph::AddCompatibilityLayers(), InputSlot::Insert(), and armnn::SelectTensorHandleStrategy().
void SetTensorHandleFactory | ( | const ITensorHandleFactory::FactoryId & | id | ) |
Definition at line 200 of file Layer.cpp.
Referenced by Graph::AddCompatibilityLayers(), and armnn::SelectTensorHandleStrategy().
|
overridevirtual |
Implements IOutputSlot.
Definition at line 87 of file Layer.cpp.
References OutputSlot::GetOutputHandler(), and OutputHandler::SetTensorInfo().
Referenced by armnn::AttemptBackendAssignment(), armnn::BuildAddMulAddTensorInfoLists(), armnn::ChainReduceLayers(), armnn::CheckScaleSetOnQuantizedType(), armnn::InsertConvertFp16ToFp32LayersBefore(), armnn::InsertConvertFp32ToFp16LayersAfter(), armnn::InsertDebugLayerAfter(), FuseBatchNorm< ConvLayer, ArmnnType, T >::Run(), AddBroadcastReshapeLayerImpl::Run(), and Layer::ValidateAndCopyShape().
bool ValidateTensorShape | ( | const TensorShape & | shape | ) | const |
Definition at line 106 of file Layer.cpp.
References ARMNN_ASSERT_MSG, TensorInfo::GetShape(), OutputHandler::GetTensorInfo(), and OutputSlot::IsTensorInfoSet().