aboutsummaryrefslogtreecommitdiff
path: root/python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i
diff options
context:
space:
mode:
Diffstat (limited to 'python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i')
-rw-r--r--python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i66
1 files changed, 66 insertions, 0 deletions
diff --git a/python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i b/python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i
new file mode 100644
index 0000000000..4d13150a19
--- /dev/null
+++ b/python/pyarmnn/src/pyarmnn/swig/modules/armnn_backend.i
@@ -0,0 +1,66 @@
+//
+// Copyright © 2017 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+%{
+#include "armnn/BackendId.hpp"
+%}
+
+namespace std {
+ %template(BackendIdVector) vector<armnn::BackendId>;
+ %template(BackendIdSet) unordered_set<armnn::BackendId>;
+}
+
+namespace armnn
+{
+
+class BackendId
+{
+public:
+ %feature("docstring",
+ "
+ Creates backend id instance.
+ Supported backend ids: 'CpuRef', 'CpuAcc', 'GpuAcc', 'NpuAcc'.
+
+ Args:
+ id (str): Computation backend identification.
+ ") BackendId;
+
+ BackendId(const std::string& id);
+
+ %feature("docstring",
+ "
+ Checks if backend is cpu reference implementation.
+ Returns:
+ bool: True if backend supports cpu reference implementation, False otherwise.
+
+ ") IsCpuRef;
+ bool IsCpuRef();
+
+ %feature("docstring",
+ "
+ Returns backend identification.
+
+ >>> backendId = BackendId('CpuRef')
+ >>> assert 'CpuRef' == str(backendId)
+ >>> assert 'CpuRef' == backendId.Get()
+
+ Returns:
+ str: Backend identification.
+
+ ") Get;
+ const std::string& Get();
+};
+
+%extend BackendId {
+
+ std::string __str__() {
+ return $self->Get();
+ }
+
+}
+
+using BackendIdVector = std::vector<armnn::BackendId>;
+using BackendIdSet = std::unordered_set<armnn::BackendId>;
+}