diff options
author | Derek Lamberti <derek.lamberti@arm.com> | 2019-02-06 16:20:46 +0000 |
---|---|---|
committer | Matteo Martincigh <matteo.martincigh@arm.com> | 2019-02-06 17:07:51 +0000 |
commit | 7205fed8ae4d6f85b350f3612cc43ee7e25176a7 (patch) | |
tree | e22e3af9d33dea7fbc9765ce7fb2b347ea356dcf /src/armnn/LayerVisitorBase.hpp | |
parent | 949f1255a247f3a1a7eabe8c8f96087d02da1d5a (diff) | |
download | armnn-7205fed8ae4d6f85b350f3612cc43ee7e25176a7.tar.gz |
IVGCVSW-2654 Test quantization of addition, input and output
Change-Id: I6c61df213278e6ba65807932548bb2eaa159deba
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Diffstat (limited to 'src/armnn/LayerVisitorBase.hpp')
-rw-r--r-- | src/armnn/LayerVisitorBase.hpp | 112 |
1 files changed, 61 insertions, 51 deletions
diff --git a/src/armnn/LayerVisitorBase.hpp b/src/armnn/LayerVisitorBase.hpp index 037a5a75ac..3b6a2ff578 100644 --- a/src/armnn/LayerVisitorBase.hpp +++ b/src/armnn/LayerVisitorBase.hpp @@ -10,7 +10,18 @@ namespace armnn { +struct VisitorThrowingPolicy +{ + static void Apply() { throw UnimplementedException(); } +}; + +struct VisitorNoThrowPolicy +{ + static void Apply() {} +}; + // Visitor base class with empty implementations. +template<typename DefaultPolicy> class LayerVisitorBase : public ILayerVisitor { protected: @@ -20,82 +31,82 @@ protected: public: virtual void VisitInputLayer(const IConnectableLayer*, LayerBindingId, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitConvolution2dLayer(const IConnectableLayer*, const Convolution2dDescriptor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitConvolution2dLayer(const IConnectableLayer*, const Convolution2dDescriptor&, const ConstTensor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitDepthwiseConvolution2dLayer(const IConnectableLayer*, const DepthwiseConvolution2dDescriptor&, const ConstTensor& , - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitDepthwiseConvolution2dLayer(const IConnectableLayer*, const DepthwiseConvolution2dDescriptor&, const ConstTensor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitDetectionPostProcessLayer(const IConnectableLayer*, const DetectionPostProcessDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitFullyConnectedLayer(const IConnectableLayer*, const FullyConnectedDescriptor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitFullyConnectedLayer(const IConnectableLayer*, const FullyConnectedDescriptor&, const ConstTensor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitPermuteLayer(const IConnectableLayer*, const PermuteDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitBatchToSpaceNdLayer(const IConnectableLayer*, const BatchToSpaceNdDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitPooling2dLayer(const IConnectableLayer*, const Pooling2dDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitActivationLayer(const IConnectableLayer*, const ActivationDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitNormalizationLayer(const IConnectableLayer*, const NormalizationDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitSoftmaxLayer(const IConnectableLayer*, const SoftmaxDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitSplitterLayer(const IConnectableLayer*, const ViewsDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitMergerLayer(const IConnectableLayer*, const OriginsDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitAdditionLayer(const IConnectableLayer*, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitMultiplicationLayer(const IConnectableLayer*, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitBatchNormalizationLayer(const IConnectableLayer*, const BatchNormalizationDescriptor&, @@ -103,76 +114,75 @@ public: const ConstTensor&, const ConstTensor&, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitResizeBilinearLayer(const IConnectableLayer*, const ResizeBilinearDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitL2NormalizationLayer(const IConnectableLayer*, const L2NormalizationDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitConstantLayer(const IConnectableLayer*, const ConstTensor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitReshapeLayer(const IConnectableLayer*, const ReshapeDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitSpaceToBatchNdLayer(const IConnectableLayer*, const SpaceToBatchNdDescriptor&, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitFloorLayer(const IConnectableLayer*, - const char*) {} + const char*) { DefaultPolicy::Apply(); } virtual void VisitOutputLayer(const IConnectableLayer*, LayerBindingId id, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitLstmLayer(const IConnectableLayer*, const LstmDescriptor&, const LstmInputParams&, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitDivisionLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitSubtractionLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitMaximumLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitMeanLayer(const IConnectableLayer*, const MeanDescriptor&, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitPadLayer(const IConnectableLayer*, const PadDescriptor&, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitStridedSliceLayer(const IConnectableLayer*, const StridedSliceDescriptor&, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitMinimumLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitGreaterLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitEqualLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitRsqrtLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } + virtual void VisitGatherLayer(const IConnectableLayer*, - const char*) {} - + const char*) { DefaultPolicy::Apply(); } }; } //namespace armnn |