IVGCVSW-3989 Create the Counter Directory Decoder
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: If388e60434eae39d82b639d2275680679963624c
diff --git a/tests/profiling/gatordmock/MockUtils.cpp b/tests/profiling/gatordmock/MockUtils.cpp
new file mode 100644
index 0000000..bdbffc9
--- /dev/null
+++ b/tests/profiling/gatordmock/MockUtils.cpp
@@ -0,0 +1,57 @@
+//
+// Copyright © 2019 Arm Ltd. All rights reserved.
+// SPDX-License-Identifier: MIT
+//
+
+#include "MockUtils.hpp"
+
+namespace armnn
+{
+
+namespace gatordmock
+{
+
+std::string CentreAlignFormatting(const std::string& stringToPass, const int spacingWidth)
+{
+ std::stringstream outputStream, centrePadding;
+ int padding = spacingWidth - static_cast<int>(stringToPass.size());
+
+ for (int i = 0; i < padding / 2; ++i)
+ {
+ centrePadding << " ";
+ }
+
+ outputStream << centrePadding.str() << stringToPass << centrePadding.str();
+
+ if (padding > 0 && padding %2 != 0)
+ {
+ outputStream << " ";
+ }
+
+ return outputStream.str();
+}
+
+std::string GetStringNameFromBuffer(const unsigned char* const data, uint32_t offset)
+{
+ std::string deviceName;
+ u_char nextChar = profiling::ReadUint8(data, offset);
+
+ while (IsValidChar(nextChar))
+ {
+ deviceName += static_cast<char>(nextChar);
+ offset ++;
+ nextChar = profiling::ReadUint8(data, offset);
+ }
+
+ return deviceName;
+}
+
+bool IsValidChar(unsigned char c)
+{
+ // Check that the given character has ASCII 7-bit encoding, alpha-numeric, whitespace, and underscore only
+ return c < 128 && (std::isalnum(c) || c == '_' || c == ' ');
+}
+
+} // gatordmock
+
+} // armnn