From 15db745d59a796fd05e3bb5a8b735f25710bdf22 Mon Sep 17 00:00:00 2001 From: Finn Williams Date: Tue, 15 Oct 2019 14:22:13 +0100 Subject: IVGCVSW-3989 Create the Counter Directory Decoder Signed-off-by: Finn Williams Change-Id: If388e60434eae39d82b639d2275680679963624c --- tests/profiling/gatordmock/MockUtils.cpp | 57 ++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 tests/profiling/gatordmock/MockUtils.cpp (limited to 'tests/profiling/gatordmock/MockUtils.cpp') diff --git a/tests/profiling/gatordmock/MockUtils.cpp b/tests/profiling/gatordmock/MockUtils.cpp new file mode 100644 index 0000000000..bdbffc9253 --- /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(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(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 -- cgit v1.2.1