IVGCVSW-3132 Reintroduce SubGraph definition, but deprecated
* Restored old SubGraph class definition as an alias of SubgraphView
for backward compatibility
* Restored SubGraphUniquePtr
* Restored CreateSubGraphConverter method (and the corresponding
ISubGraphConverterPtr type) as a deprecated method that's been
removed from the backend interface
* Chaged the defautl implementation of OptimizeSubgraphView to call
the deprecated OptimizeSubGraph
* Changed the default implementation of OptimizeSubgraphView in the
backends
Change-Id: If69903926bf5ff2aae52c9b64b4572b355662757
Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
diff --git a/src/backends/backendsCommon/IBackendInternal.hpp b/src/backends/backendsCommon/IBackendInternal.hpp
index 72214b8..fe9d620 100644
--- a/src/backends/backendsCommon/IBackendInternal.hpp
+++ b/src/backends/backendsCommon/IBackendInternal.hpp
@@ -47,6 +47,29 @@
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
+ {
+ return ISubGraphConverterPtr{};
+ }
+
+ ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
+ virtual Optimizations GetOptimizations() const = 0;
+
+ ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
+ virtual SubGraphUniquePtr OptimizeSubGraph(const SubGraph& subGraph, bool& optimizationAttempted) const
+ {
+ optimizationAttempted = false;
+ return nullptr;
+ }
+ ARMNN_NO_DEPRECATE_WARN_END
+
virtual IMemoryManagerUniquePtr CreateMemoryManager() const = 0;
virtual IWorkloadFactoryPtr CreateWorkloadFactory(
@@ -56,24 +79,14 @@
virtual ILayerSupportSharedPtr GetLayerSupport() const = 0;
- ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
- virtual Optimizations GetOptimizations() const = 0;
-
- ARMNN_DEPRECATED_MSG("Use \"OptimizationViews OptimizeSubgraphView(const SubgraphView&)\" instead")
- virtual SubgraphViewUniquePtr OptimizeSubgraphView(const SubgraphView& subgraph, bool& optimizationAttempted) const
- {
- optimizationAttempted = false;
- return nullptr;
- }
-
- // Default implementation of OptimizeSubgraphView for backward compatibility with old API.
+ // Default implementation of OptimizeSubgraphView for backward compatibility with the old API.
// Override this method with a custom optimization implementation.
virtual OptimizationViews OptimizeSubgraphView(const SubgraphView& subgraph) const
{
bool optimizationAttempted = false;
ARMNN_NO_DEPRECATE_WARN_BEGIN
- SubgraphViewUniquePtr optSubgraph = OptimizeSubgraphView(subgraph, optimizationAttempted);
+ SubGraphUniquePtr optSubgraph = OptimizeSubGraph(subgraph, optimizationAttempted);
ARMNN_NO_DEPRECATE_WARN_END
OptimizationViews result;