summaryrefslogtreecommitdiff
path: root/runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h')
-rw-r--r--runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h56
1 files changed, 56 insertions, 0 deletions
diff --git a/runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h b/runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h
new file mode 100644
index 000000000..192da2aae
--- /dev/null
+++ b/runtimes/pure_arm_compute/src/internal/op/HashtableLookup.h
@@ -0,0 +1,56 @@
+#ifndef __INTERNAL_OP_HASHTABLE_LOOKUP_H__
+#define __INTERNAL_OP_HASHTABLE_LOOKUP_H__
+
+#include "internal/op/Node.h"
+
+#include <cstdint>
+
+namespace internal
+{
+namespace tflite
+{
+namespace op
+{
+namespace HashtableLookup
+{
+
+struct Param
+{
+ int32_t output_index;
+ int32_t hits_index;
+
+ int32_t lookups_index;
+ int32_t values_index;
+ int32_t keys_index;
+
+ Param() = default;
+ Param(uint32_t inputCount, const uint32_t *inputs, uint32_t outputCount, const uint32_t *outputs);
+};
+
+class Node final : public op::Node
+{
+public:
+ Node(const Param &param) : _param(param)
+ {
+ // DO NOTHING
+ }
+
+public:
+ virtual ~Node() = default;
+
+public:
+ const Param &param(void) const { return _param; }
+
+public:
+ void accept(NodeVisitor &&) const override;
+
+private:
+ const Param _param;
+};
+
+} // namespace HashtableLookup
+} // namespace op
+} // namespace tflite
+} // namespace internal
+
+#endif // __INTERNAL_OP_HASHTABLE_LOOKUP_H__