diff options
Diffstat (limited to 'src/backends/backendsCommon/WorkloadFactory.cpp')
-rw-r--r-- | src/backends/backendsCommon/WorkloadFactory.cpp | 762 |
1 files changed, 7 insertions, 755 deletions
diff --git a/src/backends/backendsCommon/WorkloadFactory.cpp b/src/backends/backendsCommon/WorkloadFactory.cpp index 9ab3ca5b77..7a9e46ce7d 100644 --- a/src/backends/backendsCommon/WorkloadFactory.cpp +++ b/src/backends/backendsCommon/WorkloadFactory.cpp @@ -1610,769 +1610,21 @@ bool IWorkloadFactory::IsLayerSupported(const BackendId& backendId, outReasonIfUnsupported, modelOptions); } -ARMNN_NO_DEPRECATE_WARN_BEGIN + +/// Backends should implement their own CreateWorkload function with a switch statement. +/// The case for the switch should be the LayerType and based on that they will call their +/// specific workload creation functionality. std::unique_ptr<IWorkload> IWorkloadFactory::CreateWorkload(LayerType type, const QueueDescriptor& descriptor, const WorkloadInfo& info) const { + IgnoreUnused(descriptor); + IgnoreUnused(info); switch(type) { - case LayerType::Activation : - { - auto activationQueueDescriptor = PolymorphicDowncast<const ActivationQueueDescriptor*>(&descriptor); - return CreateActivation(*activationQueueDescriptor, info); - } - case LayerType::Addition : - { - auto additionQueueDescriptor = PolymorphicDowncast<const AdditionQueueDescriptor*>(&descriptor); - return CreateAddition(*additionQueueDescriptor, info); - } - case LayerType::ArgMinMax : - { - auto argMinMaxQueueDescriptor = PolymorphicDowncast<const ArgMinMaxQueueDescriptor*>(&descriptor); - return CreateArgMinMax(*argMinMaxQueueDescriptor, info); - } - case LayerType::BatchNormalization : - { - auto batchNormQueueDescriptor = PolymorphicDowncast<const BatchNormalizationQueueDescriptor*>(&descriptor); - return CreateBatchNormalization(*batchNormQueueDescriptor, info); - } - case LayerType::BatchToSpaceNd : - { - auto batchToSpaceNdQueueDescriptor - = PolymorphicDowncast<const BatchToSpaceNdQueueDescriptor*>(&descriptor); - return CreateBatchToSpaceNd(*batchToSpaceNdQueueDescriptor, info); - } - case LayerType::Cast : - { - auto castQueueDescriptor = PolymorphicDowncast<const CastQueueDescriptor*>(&descriptor); - return CreateCast(*castQueueDescriptor, info); - } - case LayerType::ChannelShuffle : - { - auto channelShuffleQueueDescriptor - = PolymorphicDowncast<const ChannelShuffleQueueDescriptor*>(&descriptor); - return CreateChannelShuffle(*channelShuffleQueueDescriptor, info); - } - case LayerType::Comparison : - { - auto comparisonQueueDescriptor = PolymorphicDowncast<const ComparisonQueueDescriptor*>(&descriptor); - return CreateComparison(*comparisonQueueDescriptor, info); - } - case LayerType::Concat : - { - auto concatQueueDescriptor = PolymorphicDowncast<const ConcatQueueDescriptor*>(&descriptor); - return CreateConcat(*concatQueueDescriptor, info); - } - case LayerType::Constant : - { - auto constantQueueDescriptor = PolymorphicDowncast<const ConstantQueueDescriptor*>(&descriptor); - return CreateConstant(*constantQueueDescriptor, info); - } - case LayerType::ConvertFp16ToFp32: - { - auto convertFp16ToFp32QueueDescriptor - = PolymorphicDowncast<const ConvertFp16ToFp32QueueDescriptor*>(&descriptor); - return CreateConvertFp16ToFp32(*convertFp16ToFp32QueueDescriptor, info); - } - case LayerType::ConvertFp32ToFp16: - { - auto convertFp32ToFp16QueueDescriptor - = PolymorphicDowncast<const ConvertFp32ToFp16QueueDescriptor*>(&descriptor); - return CreateConvertFp32ToFp16(*convertFp32ToFp16QueueDescriptor, info); - } - case LayerType::Convolution2d: - { - auto convolution2dQueueDescriptor = PolymorphicDowncast<const Convolution2dQueueDescriptor*>(&descriptor); - return CreateConvolution2d(*convolution2dQueueDescriptor, info); - } - case LayerType::Convolution3d: - { - auto convolution3dQueueDescriptor = PolymorphicDowncast<const Convolution3dQueueDescriptor*>(&descriptor); - return CreateConvolution3d(*convolution3dQueueDescriptor, info); - } - case LayerType::Debug: - { - auto debugQueueDescriptor = PolymorphicDowncast<const DebugQueueDescriptor*>(&descriptor); - return CreateDebug(*debugQueueDescriptor, info); - } - case LayerType::DepthToSpace: - { - auto depthToSpaceQueueDescriptor = PolymorphicDowncast<const DepthToSpaceQueueDescriptor*>(&descriptor); - return CreateDepthToSpace(*depthToSpaceQueueDescriptor, info); - } - case LayerType::DepthwiseConvolution2d: - { - auto depthwiseConvolution2DQueueDescriptor - = PolymorphicDowncast<const DepthwiseConvolution2dQueueDescriptor*>(&descriptor); - return CreateDepthwiseConvolution2d(*depthwiseConvolution2DQueueDescriptor, info); - } - case LayerType::Dequantize: - { - auto dequantizeQueueDescriptor = PolymorphicDowncast<const DequantizeQueueDescriptor*>(&descriptor); - return CreateDequantize(*dequantizeQueueDescriptor, info); - } - case LayerType::DetectionPostProcess: - { - auto detectionPostProcessQueueDescriptor - = PolymorphicDowncast<const DetectionPostProcessQueueDescriptor*>(&descriptor); - return CreateDetectionPostProcess(*detectionPostProcessQueueDescriptor, info); - } - case LayerType::Division: - { - auto divisionQueueDescriptor = PolymorphicDowncast<const DivisionQueueDescriptor*>(&descriptor); - return CreateDivision(*divisionQueueDescriptor, info); - } - case LayerType::ElementwiseBinary: - { - auto queueDescriptor = PolymorphicDowncast<const ElementwiseBinaryQueueDescriptor*>(&descriptor); - return CreateWorkload(LayerType::ElementwiseBinary, *queueDescriptor, info); - } - case LayerType::ElementwiseUnary: - { - auto elementwiseUnaryQueueDescriptor - = PolymorphicDowncast<const ElementwiseUnaryQueueDescriptor*>(&descriptor); - return CreateElementwiseUnary(*elementwiseUnaryQueueDescriptor, info); - - } - case LayerType::FakeQuantization: - { - auto fakeQuantizationQueueDescriptor - = PolymorphicDowncast<const FakeQuantizationQueueDescriptor*>(&descriptor); - return CreateFakeQuantization(*fakeQuantizationQueueDescriptor, info); - } - case LayerType::Fill: - { - auto fillQueueDescriptor = PolymorphicDowncast<const FillQueueDescriptor*>(&descriptor); - return CreateFill(*fillQueueDescriptor, info); - } - case LayerType::Floor: - { - auto floorQueueDescriptor = PolymorphicDowncast<const FloorQueueDescriptor*>(&descriptor); - return CreateFloor(*floorQueueDescriptor, info); - } - case LayerType::FullyConnected: - { - auto fullyConnectedQueueDescriptor - = PolymorphicDowncast<const FullyConnectedQueueDescriptor*>(&descriptor); - return CreateFullyConnected(*fullyConnectedQueueDescriptor, info); - } - case LayerType::Gather: - { - auto gatherQueueDescriptor = PolymorphicDowncast<const GatherQueueDescriptor*>(&descriptor); - return CreateGather(*gatherQueueDescriptor, info); - } - case LayerType::Input: - { - auto inputQueueDescriptor = PolymorphicDowncast<const InputQueueDescriptor*>(&descriptor); - return CreateInput(*inputQueueDescriptor, info); - } - case LayerType::InstanceNormalization: - { - auto instanceNormalizationQueueDescriptor - = PolymorphicDowncast<const InstanceNormalizationQueueDescriptor*>(&descriptor); - return CreateInstanceNormalization(*instanceNormalizationQueueDescriptor, info); - } - case LayerType::L2Normalization: - { - auto l2NormalizationQueueDescriptor - = PolymorphicDowncast<const L2NormalizationQueueDescriptor*>(&descriptor); - return CreateL2Normalization(*l2NormalizationQueueDescriptor, info); - } - case LayerType::LogicalBinary: - { - auto logicalBinaryQueueDescriptor = PolymorphicDowncast<const LogicalBinaryQueueDescriptor*>(&descriptor); - return CreateLogicalBinary(*logicalBinaryQueueDescriptor, info); - } - case LayerType::LogSoftmax: - { - auto logSoftmaxQueueDescriptor = PolymorphicDowncast<const LogSoftmaxQueueDescriptor*>(&descriptor); - return CreateLogSoftmax(*logSoftmaxQueueDescriptor, info); - } - case LayerType::Lstm: - { - auto lstmQueueDescriptor = PolymorphicDowncast<const LstmQueueDescriptor*>(&descriptor); - return CreateLstm(*lstmQueueDescriptor, info); - } - case LayerType::Maximum: - { - auto maximumQueueDescriptor = PolymorphicDowncast<const MaximumQueueDescriptor*>(&descriptor); - return CreateMaximum(*maximumQueueDescriptor, info); - } - case LayerType::Mean: - { - auto meanQueueDescriptor = PolymorphicDowncast<const MeanQueueDescriptor*>(&descriptor); - return CreateMean(*meanQueueDescriptor, info); - } - case LayerType::MemCopy: - { - auto memCopyQueueDescriptor = PolymorphicDowncast<const MemCopyQueueDescriptor*>(&descriptor); - return CreateMemCopy(*memCopyQueueDescriptor, info); - } - case LayerType::MemImport: - { - auto memImportQueueDescriptor = PolymorphicDowncast<const MemImportQueueDescriptor*>(&descriptor); - return CreateMemImport(*memImportQueueDescriptor, info); - } - case LayerType::Minimum: - { - auto minimumQueueDescriptor = PolymorphicDowncast<const MinimumQueueDescriptor*>(&descriptor); - return CreateMinimum(*minimumQueueDescriptor, info); - } - case LayerType::Multiplication: - { - auto multiplicationQueueDescriptor - = PolymorphicDowncast<const MultiplicationQueueDescriptor*>(&descriptor); - return CreateMultiplication(*multiplicationQueueDescriptor, info); - } - case LayerType::Normalization: - { - auto normalizationQueueDescriptor = PolymorphicDowncast<const NormalizationQueueDescriptor*>(&descriptor); - return CreateNormalization(*normalizationQueueDescriptor, info); - } - case LayerType::Output: - { - auto outputQueueDescriptor = PolymorphicDowncast<const OutputQueueDescriptor*>(&descriptor); - return CreateOutput(*outputQueueDescriptor, info); - } - case LayerType::Pad: - { - auto padQueueDescriptor = PolymorphicDowncast<const PadQueueDescriptor*>(&descriptor); - return CreatePad(*padQueueDescriptor, info); - } - case LayerType::Permute: - { - auto permuteQueueDescriptor = PolymorphicDowncast<const PermuteQueueDescriptor*>(&descriptor); - return CreatePermute(*permuteQueueDescriptor, info); - } - case LayerType::Pooling2d: - { - auto pooling2dQueueDescriptor = PolymorphicDowncast<const Pooling2dQueueDescriptor*>(&descriptor); - return CreatePooling2d(*pooling2dQueueDescriptor, info); - } - case LayerType::Pooling3d: - { - auto pooling3dQueueDescriptor = PolymorphicDowncast<const Pooling3dQueueDescriptor*>(&descriptor); - return CreatePooling3d(*pooling3dQueueDescriptor, info); - } - case LayerType::PreCompiled: - { - auto preCompiledQueueDescriptor = PolymorphicDowncast<const PreCompiledQueueDescriptor*>(&descriptor); - return CreatePreCompiled(*preCompiledQueueDescriptor, info); - } - case LayerType::Prelu: - { - auto preluQueueDescriptor = PolymorphicDowncast<const PreluQueueDescriptor*>(&descriptor); - return CreatePrelu(*preluQueueDescriptor, info); - } - case LayerType::QLstm: - { - auto qlstmQueueDescriptor = PolymorphicDowncast<const QLstmQueueDescriptor*>(&descriptor); - return CreateQLstm(*qlstmQueueDescriptor, info); - } - case LayerType::Quantize: - { - auto quantizeQueueDescriptor = PolymorphicDowncast<const QuantizeQueueDescriptor*>(&descriptor); - return CreateQuantize(*quantizeQueueDescriptor, info); - } - case LayerType::Rank: - { - auto rankQueueDescriptor = PolymorphicDowncast<const RankQueueDescriptor*>(&descriptor); - return CreateRank(*rankQueueDescriptor, info); - } - case LayerType::Reduce: - { - auto reduceQueueDescriptor = PolymorphicDowncast<const ReduceQueueDescriptor*>(&descriptor); - return CreateReduce(*reduceQueueDescriptor, info); - } - case LayerType::Reshape: - { - auto reshapeQueueDescriptor = PolymorphicDowncast<const ReshapeQueueDescriptor*>(&descriptor); - return CreateReshape(*reshapeQueueDescriptor, info); - } - case LayerType::Resize: - { - auto resizeQueueDescriptor = PolymorphicDowncast<const ResizeQueueDescriptor*>(&descriptor); - return CreateResize(*resizeQueueDescriptor, info); - } - case LayerType::Shape: - { - auto shapeQueueDescriptor = PolymorphicDowncast<const ShapeQueueDescriptor*>(&descriptor); - return CreateShape(*shapeQueueDescriptor, info); - } - case LayerType::Slice: - { - auto sliceQueueDescriptor = PolymorphicDowncast<const SliceQueueDescriptor*>(&descriptor); - return CreateSlice(*sliceQueueDescriptor, info); - } - case LayerType::Softmax: - { - auto softmaxQueueDescriptor = PolymorphicDowncast<const SoftmaxQueueDescriptor*>(&descriptor); - return CreateSoftmax(*softmaxQueueDescriptor, info); - } - case LayerType::SpaceToBatchNd: - { - auto spaceToBatchNdQueueDescriptor - = PolymorphicDowncast<const SpaceToBatchNdQueueDescriptor*>(&descriptor); - return CreateSpaceToBatchNd(*spaceToBatchNdQueueDescriptor, info); - } - case LayerType::SpaceToDepth: - { - auto spaceToDepthQueueDescriptor = PolymorphicDowncast<const SpaceToDepthQueueDescriptor*>(&descriptor); - return CreateSpaceToDepth(*spaceToDepthQueueDescriptor, info); - } - case LayerType::Splitter: - { - auto splitterQueueDescriptor = PolymorphicDowncast<const SplitterQueueDescriptor*>(&descriptor); - return CreateSplitter(*splitterQueueDescriptor, info); - } - case LayerType::Stack: - { - auto stackQueueDescriptor = PolymorphicDowncast<const StackQueueDescriptor*>(&descriptor); - return CreateStack(*stackQueueDescriptor, info); - } - case LayerType::StridedSlice: - { - auto stridedSliceQueueDescriptor = PolymorphicDowncast<const StridedSliceQueueDescriptor*>(&descriptor); - return CreateStridedSlice(*stridedSliceQueueDescriptor, info); - } - case LayerType::Subtraction: - { - auto subtractionQueueDescriptor = PolymorphicDowncast<const SubtractionQueueDescriptor*>(&descriptor); - return CreateSubtraction(*subtractionQueueDescriptor, info); - } - case LayerType::Transpose: - { - auto transposeQueueDescriptor = PolymorphicDowncast<const TransposeQueueDescriptor*>(&descriptor); - return CreateTranspose(*transposeQueueDescriptor, info); - } - case LayerType::TransposeConvolution2d: - { - auto transposeConvolution2dQueueDescriptor - = PolymorphicDowncast<const TransposeConvolution2dQueueDescriptor*>(&descriptor); - return CreateTransposeConvolution2d(*transposeConvolution2dQueueDescriptor, info); - } - case LayerType::UnidirectionalSequenceLstm: - { - auto unidirectionalSequenceLstmQueueDescriptor - = PolymorphicDowncast<const UnidirectionalSequenceLstmQueueDescriptor*>(&descriptor); - return CreateUnidirectionalSequenceLstm(*unidirectionalSequenceLstmQueueDescriptor, info); - } default: - return nullptr; + return std::unique_ptr<IWorkload>(); } } -ARMNN_NO_DEPRECATE_WARN_END - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateActivation(const ActivationQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateAddition(const AdditionQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateArgMinMax(const ArgMinMaxQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateBatchNormalization( - const BatchNormalizationQueueDescriptor& /*descriptor*/, const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateBatchToSpaceNd(const BatchToSpaceNdQueueDescriptor& /*desc*/, - const WorkloadInfo& /*Info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateCast(const CastQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateChannelShuffle(const ChannelShuffleQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateComparison(const ComparisonQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConcat(const ConcatQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConstant(const ConstantQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConvertFp16ToFp32(const ConvertFp16ToFp32QueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConvertFp32ToFp16(const ConvertFp32ToFp16QueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConvolution2d(const Convolution2dQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateConvolution3d(const Convolution3dQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDebug(const DebugQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDepthToSpace(const DepthToSpaceQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDepthwiseConvolution2d( - const DepthwiseConvolution2dQueueDescriptor& /*descriptor*/, const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDequantize( - const DequantizeQueueDescriptor& /*descriptor*/, const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDetectionPostProcess( - const DetectionPostProcessQueueDescriptor& /*descriptor*/, const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateDivision(const DivisionQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateElementwiseUnary(const ElementwiseUnaryQueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateFakeQuantization(const FakeQuantizationQueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateFill(const FillQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateFloor(const FloorQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateFullyConnected(const FullyConnectedQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateGather(const GatherQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateInstanceNormalization( - const InstanceNormalizationQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateL2Normalization(const L2NormalizationQueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateLogicalBinary(const LogicalBinaryQueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateLogicalUnary(const ElementwiseUnaryQueueDescriptor& /*desc*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateLogSoftmax(const LogSoftmaxQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateLstm(const LstmQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMaximum(const MaximumQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMean(const MeanQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*Info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMemCopy(const MemCopyQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMemImport(const MemImportQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMerge(const MergeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMinimum(const MinimumQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateMultiplication(const MultiplicationQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateNormalization(const NormalizationQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateOutput(const OutputQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePad(const PadQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*Info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePermute(const PermuteQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePooling2d(const Pooling2dQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePooling3d(const Pooling3dQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePreCompiled(const PreCompiledQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreatePrelu(const PreluQueueDescriptor &/*descriptor*/, - const WorkloadInfo &/*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateQuantize(const QuantizeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*Info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateQLstm(const QLstmQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateQuantizedLstm(const QuantizedLstmQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} -std::unique_ptr<IWorkload> IWorkloadFactory::CreateRank(const RankQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateReduce(const ReduceQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateReshape(const ReshapeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateResize(const ResizeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateShape(const ShapeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSlice(const SliceQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSoftmax(const SoftmaxQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSplitter(const SplitterQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSpaceToBatchNd(const SpaceToBatchNdQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSpaceToDepth(const SpaceToDepthQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateStack(const StackQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateStridedSlice(const StridedSliceQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSubtraction(const SubtractionQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateSwitch(const SwitchQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateTranspose(const TransposeQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateTransposeConvolution2d( - const TransposeConvolution2dQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateUnidirectionalSequenceLstm( - const UnidirectionalSequenceLstmQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} - -std::unique_ptr<IWorkload> IWorkloadFactory::CreateInput( - const InputQueueDescriptor& /*descriptor*/, - const WorkloadInfo& /*info*/) const -{ - return std::unique_ptr<IWorkload>(); -} } // namepsace armnn |