IVGCVSW-5985 Remove deprecated code

 * Removes deprecated AddLayer, IsLayerSupported functions
 * Marks the whole LayerVisitor class as deprecated not just the
   constructor. This required to wrap all Accept functions in a
   no deprecate macro because the LayerVisitor is used as a parameter in
   there
 * Removes usage of deprecated LayerVisitor and replaces it
   with ExecuteStrategy. This required a few structural changes
   in the unit tests
 * Adds a default implementation for IStrategy called StrategyBase
 * Changes pyarmnn to use non deprecated constructor for
   INetworkProperties and adds related unit test
 * Marks usage of deprecated code in pyarmnn as deprecated. This
   required to extend INetworkProperties to allow backwards compatibility
 * Removes deprecated functions from CpuAcc, GpuAcc and Ref backends

Note: This patch breaks compatibility with backends that are not
      updated in this patch

!android-nn-driver:6325

Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id13b6f37a74d26eadeda2da1dc92915e725ed5a5
diff --git a/include/armnn/backends/IBackendInternal.hpp b/include/armnn/backends/IBackendInternal.hpp
index 2045ba2..f4fe678 100644
--- a/include/armnn/backends/IBackendInternal.hpp
+++ b/include/armnn/backends/IBackendInternal.hpp
@@ -98,25 +98,6 @@
     using IMemoryManagerUniquePtr = std::unique_ptr<IMemoryManager>;
     using IMemoryManagerSharedPtr = std::shared_ptr<IMemoryManager>;
 
-    using GraphUniquePtr = std::unique_ptr<Graph>;
-    using SubgraphViewUniquePtr = std::unique_ptr<SubgraphView>;
-
-    ARMNN_NO_DEPRECATE_WARN_BEGIN
-    using ISubGraphConverterPtr ARMNN_DEPRECATED_MSG("This type is no longer supported")
-        = std::unique_ptr<ISubGraphConverter>;
-    using SubGraphUniquePtr ARMNN_DEPRECATED_MSG("SubGraph is deprecated, use SubgraphView instead")
-        = std::unique_ptr<SubGraph>;
-
-    ARMNN_DEPRECATED_MSG("This method is no longer supported")
-    virtual ISubGraphConverterPtr CreateSubGraphConverter(const std::shared_ptr<SubGraph>& subGraph) const;
-
-    ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
-    virtual Optimizations GetOptimizations() const;
-
-    ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
-    virtual SubGraphUniquePtr OptimizeSubGraph(const SubGraph& subGraph, bool& optimizationAttempted) const;
-    ARMNN_NO_DEPRECATE_WARN_END
-
     virtual IMemoryManagerUniquePtr CreateMemoryManager() const;
 
     virtual IWorkloadFactoryPtr CreateWorkloadFactory(
@@ -194,7 +175,7 @@
     };
 
     /// Returns true if backend support the capability false otherwise
-    ARMNN_DEPRECATED_MSG("This function has been deprecated in favour of GetCapability")
+    ARMNN_DEPRECATED_MSG_REMOVAL_DATE("This function has been deprecated in favour of GetCapability", "22.05")
     virtual bool HasCapability(BackendCapability /*capabilityClass*/) const { return false; }
 
     /// Signals the backend to use a custom memory allocator provided by the user