aboutsummaryrefslogtreecommitdiff
path: root/profiling/client/include/CounterIdMap.hpp
diff options
context:
space:
mode:
authorJim Flynn <jim.flynn@arm.com>2022-03-20 21:52:17 +0000
committerJim Flynn <jim.flynn@arm.com>2022-03-23 20:32:03 +0000
commit277618302d0f131eac0b6ac2015dd3eb09aa6ff9 (patch)
treee468fa1362640484b508812596fb5c1b62186882 /profiling/client/include/CounterIdMap.hpp
parenta3bc0b4976395226c0fa0898b26098c4534edbdb (diff)
downloadarmnn-277618302d0f131eac0b6ac2015dd3eb09aa6ff9.tar.gz
IVGCVSW-6706 Move headers to profiling/client/include
!android-nn-driver:7337 Change-Id: Ide401623829cc99fb9b51e9bbce3482ce706a8dd Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Diffstat (limited to 'profiling/client/include/CounterIdMap.hpp')
-rw-r--r--profiling/client/include/CounterIdMap.hpp51
1 files changed, 51 insertions, 0 deletions
diff --git a/profiling/client/include/CounterIdMap.hpp b/profiling/client/include/CounterIdMap.hpp
new file mode 100644
index 0000000000..cce7184c46
--- /dev/null
+++ b/profiling/client/include/CounterIdMap.hpp
@@ -0,0 +1,51 @@
+//
+// Copyright © 2020 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+#pragma once
+
+#include <map>
+#include <string>
+
+namespace arm
+{
+namespace pipe
+{
+
+class ICounterMappings
+{
+public:
+ virtual uint16_t GetGlobalId(uint16_t backendCounterId, const std::string& backendId) const = 0;
+ virtual const std::pair<uint16_t, std::string>& GetBackendId(uint16_t globalCounterId) const = 0;
+ virtual ~ICounterMappings() {}
+};
+
+class IRegisterCounterMapping
+{
+public:
+ virtual void RegisterMapping(uint16_t globalCounterId,
+ uint16_t backendCounterId,
+ const std::string& backendId) = 0;
+ virtual void Reset() = 0;
+ virtual ~IRegisterCounterMapping() {}
+};
+
+class CounterIdMap : public ICounterMappings, public IRegisterCounterMapping
+{
+
+public:
+ CounterIdMap() = default;
+ virtual ~CounterIdMap() {}
+ void RegisterMapping(uint16_t globalCounterId,
+ uint16_t backendCounterId,
+ const std::string& backendId) override;
+ void Reset() override;
+ uint16_t GetGlobalId(uint16_t backendCounterId, const std::string& backendId) const override;
+ const std::pair<uint16_t, std::string>& GetBackendId(uint16_t globalCounterId) const override;
+private:
+ std::map<uint16_t, std::pair<uint16_t, std::string>> m_GlobalCounterIdMap;
+ std::map<std::pair<uint16_t, std::string>, uint16_t> m_BackendCounterIdMap;
+};
+
+} // namespace pipe
+} // namespace arm