aboutsummaryrefslogtreecommitdiff
path: root/src/backends/reference
diff options
context:
space:
mode:
Diffstat (limited to 'src/backends/reference')
-rw-r--r--src/backends/reference/RefBackend.cpp9
-rw-r--r--src/backends/reference/RefBackend.hpp4
-rw-r--r--src/backends/reference/RefWorkloadFactory.cpp3
-rw-r--r--src/backends/reference/RefWorkloadFactory.hpp6
4 files changed, 9 insertions, 13 deletions
diff --git a/src/backends/reference/RefBackend.cpp b/src/backends/reference/RefBackend.cpp
index 9afb42d59f..34348fa120 100644
--- a/src/backends/reference/RefBackend.cpp
+++ b/src/backends/reference/RefBackend.cpp
@@ -23,7 +23,7 @@ static StaticRegistryInitializer<BackendRegistry> g_RegisterHelper
RefBackend::GetIdStatic(),
[]()
{
- return IBackendUniquePtr(new RefBackend, &RefBackend::Destroy);
+ return IBackendInternalUniquePtr(new RefBackend);
}
};
@@ -35,14 +35,9 @@ const BackendId& RefBackend::GetIdStatic()
return s_Id;
}
-std::unique_ptr<IWorkloadFactory> RefBackend::CreateWorkloadFactory() const
+IBackendInternal::IWorkloadFactoryPtr RefBackend::CreateWorkloadFactory() const
{
return std::make_unique<RefWorkloadFactory>();
}
-void RefBackend::Destroy(IBackend* backend)
-{
- delete boost::polymorphic_downcast<RefBackend*>(backend);
-}
-
} // namespace armnn \ No newline at end of file
diff --git a/src/backends/reference/RefBackend.hpp b/src/backends/reference/RefBackend.hpp
index 0cd3cf4dce..7162c9bf40 100644
--- a/src/backends/reference/RefBackend.hpp
+++ b/src/backends/reference/RefBackend.hpp
@@ -18,9 +18,7 @@ public:
static const BackendId& GetIdStatic();
const BackendId& GetId() const override { return GetIdStatic(); }
- std::unique_ptr<IWorkloadFactory> CreateWorkloadFactory() const override;
-
- static void Destroy(IBackend* backend);
+ IWorkloadFactoryPtr CreateWorkloadFactory() const override;
};
} // namespace armnn \ No newline at end of file
diff --git a/src/backends/reference/RefWorkloadFactory.cpp b/src/backends/reference/RefWorkloadFactory.cpp
index 048f6cdcc4..783e5fba2e 100644
--- a/src/backends/reference/RefWorkloadFactory.cpp
+++ b/src/backends/reference/RefWorkloadFactory.cpp
@@ -25,7 +25,8 @@ RefWorkloadFactory::RefWorkloadFactory()
{
}
-bool RefWorkloadFactory::IsLayerSupported(const Layer& layer, boost::optional<DataType> dataType,
+bool RefWorkloadFactory::IsLayerSupported(const Layer& layer,
+ Optional<DataType> dataType,
std::string& outReasonIfUnsupported)
{
return IWorkloadFactory::IsLayerSupported(Compute::CpuRef, layer, dataType, outReasonIfUnsupported);
diff --git a/src/backends/reference/RefWorkloadFactory.hpp b/src/backends/reference/RefWorkloadFactory.hpp
index 1a9227a978..ef2e1abfaa 100644
--- a/src/backends/reference/RefWorkloadFactory.hpp
+++ b/src/backends/reference/RefWorkloadFactory.hpp
@@ -4,11 +4,12 @@
//
#pragma once
+#include <armnn/Optional.hpp>
#include <backends/WorkloadFactory.hpp>
#include <backends/OutputHandler.hpp>
#include <boost/core/ignore_unused.hpp>
-#include <boost/optional.hpp>
+
namespace armnn
{
@@ -34,7 +35,8 @@ public:
virtual Compute GetCompute() const override { return Compute::CpuRef; }
- static bool IsLayerSupported(const Layer& layer, boost::optional<DataType> dataType,
+ static bool IsLayerSupported(const Layer& layer,
+ Optional<DataType> dataType,
std::string& outReasonIfUnsupported);
virtual bool SupportsSubTensors() const override { return false; }