aboutsummaryrefslogtreecommitdiff
path: root/src/timelineDecoder
diff options
context:
space:
mode:
authorJim Flynn <jim.flynn@arm.com>2020-07-20 16:57:44 +0100
committerJim Flynn <jim.flynn@arm.com>2020-07-29 15:35:15 +0100
commitbbfe603e5ae42317a2b67d713d00882bea341c88 (patch)
tree8d8a78d6836384fb92fb9741c865443624dfec68 /src/timelineDecoder
parenta9c2ce123a6a5a68728d040a0323c482bbe46903 (diff)
downloadarmnn-bbfe603e5ae42317a2b67d713d00882bea341c88.tar.gz
IVGCVSW-5166 Pull out the common and server side code into standalone libraries
Change-Id: I180f84c493a9b2be4b93b25d312ebdd9e71b1735 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Diffstat (limited to 'src/timelineDecoder')
-rw-r--r--src/timelineDecoder/CMakeLists.txt26
-rw-r--r--src/timelineDecoder/JSONTimelineDecoder.cpp1
-rw-r--r--src/timelineDecoder/JSONTimelineDecoder.hpp4
-rw-r--r--src/timelineDecoder/TimelineCaptureCommandHandler.cpp164
-rw-r--r--src/timelineDecoder/TimelineCaptureCommandHandler.hpp65
-rw-r--r--src/timelineDecoder/TimelineDecoder.cpp323
-rw-r--r--src/timelineDecoder/TimelineDecoder.hpp70
-rw-r--r--src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.cpp118
-rw-r--r--src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.hpp52
-rw-r--r--src/timelineDecoder/tests/JSONTimelineDecoderTests.cpp348
-rw-r--r--src/timelineDecoder/tests/TimelineTests.cpp369
11 files changed, 186 insertions, 1354 deletions
diff --git a/src/timelineDecoder/CMakeLists.txt b/src/timelineDecoder/CMakeLists.txt
index 695aa5cbe8..e7d5481eb5 100644
--- a/src/timelineDecoder/CMakeLists.txt
+++ b/src/timelineDecoder/CMakeLists.txt
@@ -1,37 +1,31 @@
#
-# Copyright © 2020 Arm Ltd. All rights reserved.
+# Copyright © 2020 Arm Ltd and Contributors. All rights reserved.
# SPDX-License-Identifier: MIT
#
if(BUILD_TIMELINE_DECODER)
- set(timelineDecoder_sources)
- list(APPEND timelineDecoder_sources
- ${PROJECT_SOURCE_DIR}/include/armnn/profiling/ITimelineDecoder.hpp
- TimelineCaptureCommandHandler.cpp
- TimelineCaptureCommandHandler.hpp
+ set(jsonTimelineDecoder_sources)
+ list(APPEND jsonTimelineDecoder_sources
JSONTimelineDecoder.cpp
- JSONTimelineDecoder.hpp
- TimelineDecoder.cpp
- TimelineDecoder.hpp
- TimelineDirectoryCaptureCommandHandler.cpp
- TimelineDirectoryCaptureCommandHandler.hpp)
+ JSONTimelineDecoder.hpp)
include_directories(${PROJECT_SOURCE_DIR}/src/profiling
${PROJECT_SOURCE_DIR}/profiling/common/include
+ ${PROJECT_SOURCE_DIR}/profiling/server/include/timelineDecoder
${PROJECT_SOURCE_DIR}/src/armnnUtils)
if(BUILD_UNIT_TESTS)
target_include_directories(UnitTests PRIVATE ${PROJECT_SOURCE_DIR}/src/timelineDecoder)
endif()
- add_library_ex(timelineDecoder SHARED ${timelineDecoder_sources})
+ add_library_ex(jsonTimelineDecoder SHARED ${jsonTimelineDecoder_sources})
- set_target_properties(timelineDecoder PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
- set_target_properties(timelineDecoder PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
+ set_target_properties(jsonTimelineDecoder PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR})
+ set_target_properties(jsonTimelineDecoder PROPERTIES VERSION ${GENERIC_LIB_VERSION} SOVERSION ${GENERIC_LIB_SOVERSION} )
- target_link_libraries(timelineDecoder armnn)
+ target_link_libraries(jsonTimelineDecoder armnn)
- install(TARGETS timelineDecoder
+ install(TARGETS jsonTimelineDecoder
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()
diff --git a/src/timelineDecoder/JSONTimelineDecoder.cpp b/src/timelineDecoder/JSONTimelineDecoder.cpp
index c0e81370ed..0eafe493aa 100644
--- a/src/timelineDecoder/JSONTimelineDecoder.cpp
+++ b/src/timelineDecoder/JSONTimelineDecoder.cpp
@@ -7,7 +7,6 @@
#include "../profiling/ProfilingUtils.hpp"
#include <string>
-#include <fstream>
namespace armnn
{
diff --git a/src/timelineDecoder/JSONTimelineDecoder.hpp b/src/timelineDecoder/JSONTimelineDecoder.hpp
index a6e2579b45..7fed9a1a86 100644
--- a/src/timelineDecoder/JSONTimelineDecoder.hpp
+++ b/src/timelineDecoder/JSONTimelineDecoder.hpp
@@ -5,7 +5,7 @@
#pragma once
-#include <armnn/profiling/ITimelineDecoder.hpp>
+#include <server/include/timelineDecoder/ITimelineDecoder.hpp>
#include <Filesystem.hpp>
#include <map>
@@ -15,7 +15,7 @@ namespace armnn
{
namespace timelinedecoder
{
-class JSONTimelineDecoder : public ITimelineDecoder
+class JSONTimelineDecoder : public arm::pipe::ITimelineDecoder
{
public:
struct JSONEntity
diff --git a/src/timelineDecoder/TimelineCaptureCommandHandler.cpp b/src/timelineDecoder/TimelineCaptureCommandHandler.cpp
deleted file mode 100644
index 39a806ce87..0000000000
--- a/src/timelineDecoder/TimelineCaptureCommandHandler.cpp
+++ /dev/null
@@ -1,164 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#include "TimelineCaptureCommandHandler.hpp"
-
-#include <string>
-#include <armnn/Logging.hpp>
-namespace armnn
-{
-
-namespace timelinedecoder
-{
-
-//Array of member functions, the array index matches the decl_id
-const TimelineCaptureCommandHandler::ReadFunction TimelineCaptureCommandHandler::m_ReadFunctions[]
-{
- &TimelineCaptureCommandHandler::ReadLabel, // Label decl_id = 0
- &TimelineCaptureCommandHandler::ReadEntity, // Entity decl_id = 1
- &TimelineCaptureCommandHandler::ReadEventClass, // EventClass decl_id = 2
- &TimelineCaptureCommandHandler::ReadRelationship, // Relationship decl_id = 3
- &TimelineCaptureCommandHandler::ReadEvent // Event decl_id = 4
-};
-
-void TimelineCaptureCommandHandler::SetThreadIdSize(uint32_t size)
-{
- m_ThreadIdSize = size;
-}
-
-void TimelineCaptureCommandHandler::operator()(const profiling::Packet& packet)
-{
- ParseData(packet);
-}
-
-void TimelineCaptureCommandHandler::ParseData(const armnn::profiling::Packet& packet)
-{
- uint32_t offset = 0;
- m_PacketLength = packet.GetLength();
-
- // We are expecting TimelineDirectoryCaptureCommandHandler to set the thread id size
- // if it not set in the constructor
- if (m_ThreadIdSize == 0)
- {
- ARMNN_LOG(error) << "TimelineCaptureCommandHandler: m_ThreadIdSize has not been set";
- return;
- }
-
- if (packet.GetLength() < 8)
- {
- return;
- }
-
- const unsigned char* data = reinterpret_cast<const unsigned char*>(packet.GetData());
-
- uint32_t declId = 0;
-
- while ( offset < m_PacketLength )
- {
- declId = profiling::ReadUint32(data, offset);
- offset += uint32_t_size;
-
- ITimelineDecoder::TimelineStatus status = (this->*m_ReadFunctions[declId])(data, offset);
- if (status == ITimelineDecoder::TimelineStatus::TimelineStatus_Fail)
- {
- ARMNN_LOG(error) << "Decode of timeline message type [" << declId <<
- "] at offset [" << offset << "] failed";
- break;
- }
- }
-}
-
-ITimelineDecoder::TimelineStatus TimelineCaptureCommandHandler::ReadLabel(const unsigned char* data, uint32_t& offset)
-{
- ITimelineDecoder::Label label;
- label.m_Guid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- uint32_t nameLength = profiling::ReadUint32(data, offset);
- offset += uint32_t_size;
-
- uint32_t i = 0;
- // nameLength - 1 to account for null operator \0
- for ( i = 0; i < nameLength - 1; ++i )
- {
- label.m_Name += static_cast<char>(profiling::ReadUint8(data, offset + i));
- }
- // Shift offset past nameLength
- uint32_t uint32WordAmount = (nameLength / uint32_t_size) + (nameLength % uint32_t_size != 0 ? 1 : 0);
- offset += uint32WordAmount * uint32_t_size;
-
- return m_TimelineDecoder.CreateLabel(label);
-}
-
-ITimelineDecoder::TimelineStatus TimelineCaptureCommandHandler::ReadEntity(
- const unsigned char* data, uint32_t& offset)
-{
- ITimelineDecoder::Entity entity;
- entity.m_Guid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
- return m_TimelineDecoder.CreateEntity(entity);
-}
-
-ITimelineDecoder::TimelineStatus TimelineCaptureCommandHandler::ReadEventClass(
- const unsigned char* data, uint32_t& offset)
-{
- ITimelineDecoder::EventClass eventClass;
- eventClass.m_Guid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
- eventClass.m_NameGuid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
- return m_TimelineDecoder.CreateEventClass(eventClass);
-}
-
-ITimelineDecoder::TimelineStatus TimelineCaptureCommandHandler::ReadRelationship(
- const unsigned char* data, uint32_t& offset)
-{
- ITimelineDecoder::Relationship relationship;
- relationship.m_RelationshipType =
- static_cast<ITimelineDecoder::RelationshipType>(profiling::ReadUint32(data, offset));
- offset += uint32_t_size;
-
- relationship.m_Guid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- relationship.m_HeadGuid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- relationship.m_TailGuid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- relationship.m_AttributeGuid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- return m_TimelineDecoder.CreateRelationship(relationship);
-}
-
-ITimelineDecoder::TimelineStatus TimelineCaptureCommandHandler::ReadEvent(
- const unsigned char* data, uint32_t& offset)
-{
- ITimelineDecoder::Event event;
- event.m_TimeStamp = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- if ( m_ThreadIdSize == 4 )
- {
- event.m_ThreadId = profiling::ReadUint32(data, offset);
- }
- else if ( m_ThreadIdSize == 8 )
- {
- event.m_ThreadId = profiling::ReadUint64(data, offset);
- }
-
- offset += m_ThreadIdSize;
-
- event.m_Guid = profiling::ReadUint64(data, offset);
- offset += uint64_t_size;
-
- return m_TimelineDecoder.CreateEvent(event);
-}
-
-} //namespace gatordmock
-
-} //namespace armnn
diff --git a/src/timelineDecoder/TimelineCaptureCommandHandler.hpp b/src/timelineDecoder/TimelineCaptureCommandHandler.hpp
deleted file mode 100644
index 0431e9ca49..0000000000
--- a/src/timelineDecoder/TimelineCaptureCommandHandler.hpp
+++ /dev/null
@@ -1,65 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#pragma once
-
-#include <armnn/profiling/ITimelineDecoder.hpp>
-
-#include <CommandHandlerFunctor.hpp>
-#include <Packet.hpp>
-#include <ProfilingUtils.hpp>
-
-namespace armnn
-{
-
-namespace timelinedecoder
-{
-
-class TimelineCaptureCommandHandler :
- public profiling::CommandHandlerFunctor
-{
- // Utils
- uint32_t uint32_t_size = sizeof(uint32_t);
- uint32_t uint64_t_size = sizeof(uint64_t);
-
- using ReadFunction = ITimelineDecoder::TimelineStatus (TimelineCaptureCommandHandler::*)(
- const unsigned char*, uint32_t&);
-
-public:
- TimelineCaptureCommandHandler(uint32_t familyId,
- uint32_t packetId,
- uint32_t version,
- ITimelineDecoder& timelineDecoder,
- uint32_t threadIdSize = 0)
- : CommandHandlerFunctor(familyId, packetId, version)
- , m_TimelineDecoder(timelineDecoder)
- , m_ThreadIdSize(threadIdSize)
- , m_PacketLength(0)
- {}
-
- void operator()(const armnn::profiling::Packet& packet) override;
-
-
- void SetThreadIdSize(uint32_t size);
-
-private:
- void ParseData(const armnn::profiling::Packet& packet);
-
- ITimelineDecoder::TimelineStatus ReadLabel(const unsigned char* data, uint32_t& offset);
- ITimelineDecoder::TimelineStatus ReadEntity(const unsigned char* data, uint32_t& offset);
- ITimelineDecoder::TimelineStatus ReadEventClass(const unsigned char* data, uint32_t& offset);
- ITimelineDecoder::TimelineStatus ReadRelationship(const unsigned char* data, uint32_t& offset);
- ITimelineDecoder::TimelineStatus ReadEvent(const unsigned char* data, uint32_t& offset);
-
- ITimelineDecoder& m_TimelineDecoder;
- uint32_t m_ThreadIdSize;
- unsigned int m_PacketLength;
- static const ReadFunction m_ReadFunctions[];
-
-};
-
-} //namespace gatordmock
-
-} //namespace armnn
diff --git a/src/timelineDecoder/TimelineDecoder.cpp b/src/timelineDecoder/TimelineDecoder.cpp
deleted file mode 100644
index 9aa84d2084..0000000000
--- a/src/timelineDecoder/TimelineDecoder.cpp
+++ /dev/null
@@ -1,323 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#include "TimelineDecoder.hpp"
-#include <ProfilingUtils.hpp>
-#include <iostream>
-
-namespace armnn
-{
-namespace timelinedecoder
-{
-
-TimelineDecoder::TimelineStatus TimelineDecoder::CreateEntity(const Entity &entity)
-{
- if (m_OnNewEntityCallback == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEntityCallback(m_Model, entity);
-
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::CreateEventClass(const EventClass &eventClass)
-{
- if (m_OnNewEventClassCallback == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEventClassCallback(m_Model, eventClass);
-
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::CreateEvent(const Event &event)
-{
- if (m_OnNewEventCallback == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEventCallback(m_Model, event);
-
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::CreateLabel(const Label &label)
-{
- if (m_OnNewLabelCallback == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewLabelCallback(m_Model, label);
-
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::CreateRelationship(const Relationship &relationship)
-{
- if (m_OnNewRelationshipCallback == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewRelationshipCallback(m_Model, relationship);
- return TimelineStatus::TimelineStatus_Success;
-}
-
-const TimelineDecoder::Model &TimelineDecoder::GetModel()
-{
- return m_Model;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::SetEntityCallback(OnNewEntityCallback cb)
-{
- if (cb == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEntityCallback = cb;
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::SetEventClassCallback(OnNewEventClassCallback cb)
-{
- if (cb == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEventClassCallback = cb;
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::SetEventCallback(OnNewEventCallback cb)
-{
- if (cb == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewEventCallback = cb;
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::SetLabelCallback(OnNewLabelCallback cb)
-{
- if (cb == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewLabelCallback = cb;
- return TimelineStatus::TimelineStatus_Success;
-}
-
-TimelineDecoder::TimelineStatus TimelineDecoder::SetRelationshipCallback(OnNewRelationshipCallback cb)
-{
- if (cb == nullptr)
- {
- return TimelineStatus::TimelineStatus_Fail;
- }
- m_OnNewRelationshipCallback = cb;
- return TimelineStatus::TimelineStatus_Success;
-}
-
-void TimelineDecoder::SetDefaultCallbacks()
-{
- SetEntityCallback([](Model& model, const ITimelineDecoder::Entity entity)
- {
- model.m_Entities.emplace_back(entity);
- });
-
- SetEventClassCallback([](Model& model, const ITimelineDecoder::EventClass eventClass)
- {
- model.m_EventClasses.emplace_back(eventClass);
- });
-
- SetEventCallback([](Model& model, const ITimelineDecoder::Event event)
- {
- model.m_Events.emplace_back(event);
- });
-
- SetLabelCallback([](Model& model, const ITimelineDecoder::Label label)
- {
- model.m_Labels.emplace_back(label);
- });
-
- SetRelationshipCallback([](Model& model, const ITimelineDecoder::Relationship relationship)
- {
- model.m_Relationships.emplace_back(relationship);
- });
-}
-
-void TimelineDecoder::print()
-{
- if (m_Model.m_Labels.empty() && m_Model.m_Entities.empty() && m_Model.m_EventClasses.empty() &&
- m_Model.m_Events.empty() && m_Model.m_Relationships.empty())
- {
- std::cout << "No timeline packets received" << std::endl;
- return;
- }
-
- printLabels();
- printEntities();
- printEventClasses();
- printEvents();
- printRelationships();
-}
-
-void TimelineDecoder::printLabels()
-{
- std::string header;
-
- header.append(profiling::CentreAlignFormatting("guid", 12));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("value", 30));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("LABELS", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
- std::cout << header;
-
- for (uint32_t i = 0; i < m_Model.m_Labels.size(); ++i)
- {
- std::string body;
-
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Labels[i].m_Guid), 12));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(m_Model.m_Labels[i].m_Name, 30));
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
- std::cout << body;
- }
-}
-
-void TimelineDecoder::printEntities()
-{
- std::string header;
- header.append(profiling::CentreAlignFormatting("guid", 12));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("ENTITIES", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
- std::cout << header;
-
- for (uint32_t i = 0; i < m_Model.m_Entities.size(); ++i)
- {
- std::string body;
-
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Entities[i].m_Guid), 12));
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
- std::cout << body;
- }
-}
-
-void TimelineDecoder::printEventClasses()
-{
- std::string header;
- header.append(profiling::CentreAlignFormatting("guid", 12));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("EVENT CLASSES", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
- std::cout << header;
-
- for (uint32_t i = 0; i < m_Model.m_EventClasses.size(); ++i)
- {
- std::string body;
-
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_EventClasses[i].m_Guid), 12));
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
- std::cout << body;
- }
-}
-
-void TimelineDecoder::printEvents()
-{
- std::string header;
-
- header.append(profiling::CentreAlignFormatting("timestamp", 12));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("threadId", 12));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("eventGuid", 12));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("EVENTS", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
- std::cout << header;
-
- for (uint32_t i = 0; i < m_Model.m_Events.size(); ++i)
- {
- std::string body;
-
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Events[i].m_TimeStamp), 12));
- body.append(" | ");
-
- std::stringstream ss;
- ss << m_Model.m_Events[i].m_ThreadId;
- std::string threadId = ss.str();;
-
- body.append(profiling::CentreAlignFormatting(threadId, 12));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Events[i].m_Guid), 12));
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
- std::cout << body;
- }
-}
-
-void TimelineDecoder::printRelationships()
-{
- std::string header;
- header.append(profiling::CentreAlignFormatting("relationshipType", 20));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("relationshipGuid", 20));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("headGuid", 12));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("tailGuid", 12));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("RELATIONSHIPS", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
- std::cout << header;
-
- for (uint32_t i = 0; i < m_Model.m_Relationships.size(); ++i)
- {
- std::string body;
-
- body.append(
- profiling::CentreAlignFormatting(std::to_string(static_cast<unsigned int>
- (m_Model.m_Relationships[i].m_RelationshipType)),
- 20));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Relationships[i].m_Guid), 20));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Relationships[i].m_HeadGuid), 12));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(std::to_string(m_Model.m_Relationships[i].m_TailGuid), 12));
- body.append(" | ");
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
- std::cout << body;
- }
-}
-}
-} \ No newline at end of file
diff --git a/src/timelineDecoder/TimelineDecoder.hpp b/src/timelineDecoder/TimelineDecoder.hpp
deleted file mode 100644
index 2efdc4483b..0000000000
--- a/src/timelineDecoder/TimelineDecoder.hpp
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-// Copyright © 2020 Arm Ltd. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-#pragma once
-
-#include <armnn/profiling/ITimelineDecoder.hpp>
-
-#include <vector>
-
-namespace armnn
-{
-namespace timelinedecoder
-{
-class TimelineDecoder : public ITimelineDecoder
-{
-
-public:
-
- struct Model
- {
- std::vector<Entity> m_Entities;
- std::vector<EventClass> m_EventClasses;
- std::vector<Event> m_Events;
- std::vector<Label> m_Labels;
- std::vector<Relationship> m_Relationships;
- };
-
- using OnNewEntityCallback = void (*)(Model &, const Entity);
- using OnNewEventClassCallback = void (*)(Model &, const EventClass);
- using OnNewEventCallback = void (*)(Model &, const Event);
- using OnNewLabelCallback = void (*)(Model &, const Label);
- using OnNewRelationshipCallback = void (*)(Model &, const Relationship);
-
- virtual TimelineStatus CreateEntity(const Entity &) override;
- virtual TimelineStatus CreateEventClass(const EventClass &) override;
- virtual TimelineStatus CreateEvent(const Event &) override;
- virtual TimelineStatus CreateLabel(const Label &) override;
- virtual TimelineStatus CreateRelationship(const Relationship &) override;
-
- const Model& GetModel();
-
- TimelineStatus SetEntityCallback(const OnNewEntityCallback);
- TimelineStatus SetEventClassCallback(const OnNewEventClassCallback);
- TimelineStatus SetEventCallback(const OnNewEventCallback);
- TimelineStatus SetLabelCallback(const OnNewLabelCallback);
- TimelineStatus SetRelationshipCallback(const OnNewRelationshipCallback);
-
- void SetDefaultCallbacks();
-
- void print();
-
-private:
- Model m_Model;
-
- OnNewEntityCallback m_OnNewEntityCallback;
- OnNewEventClassCallback m_OnNewEventClassCallback;
- OnNewEventCallback m_OnNewEventCallback;
- OnNewLabelCallback m_OnNewLabelCallback;
- OnNewRelationshipCallback m_OnNewRelationshipCallback;
-
- void printLabels();
- void printEntities();
- void printEventClasses();
- void printRelationships();
- void printEvents();
-};
-
-}
-} \ No newline at end of file
diff --git a/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.cpp b/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.cpp
deleted file mode 100644
index 5aac77c86a..0000000000
--- a/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.cpp
+++ /dev/null
@@ -1,118 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#include "TimelineDirectoryCaptureCommandHandler.hpp"
-#include "TimelineCaptureCommandHandler.hpp"
-
-#include <iostream>
-#include <string>
-
-using namespace armnn::profiling;
-
-namespace armnn
-{
-
-namespace timelinedecoder
-{
-
-void TimelineDirectoryCaptureCommandHandler::ParseData(const armnn::profiling::Packet& packet)
-{
- uint32_t offset = 0;
-
- if (packet.GetLength() < 8)
- {
- return;
- }
-
- const unsigned char* data = packet.GetData();
-
- m_SwTraceHeader.m_StreamVersion = ReadUint8(data, offset);
- offset += uint8_t_size;
- m_SwTraceHeader.m_PointerBytes = ReadUint8(data, offset);
- offset += uint8_t_size;
- m_SwTraceHeader.m_ThreadIdBytes = ReadUint8(data, offset);
- offset += uint8_t_size;
-
- uint32_t numberOfDeclarations = profiling::ReadUint32(data, offset);
- offset += uint32_t_size;
-
- for (uint32_t declaration = 0; declaration < numberOfDeclarations; ++declaration)
- {
- m_SwTraceMessages.push_back(profiling::ReadSwTraceMessage(data, offset, packet.GetLength()));
- }
-
- m_TimelineCaptureCommandHandler.SetThreadIdSize(m_SwTraceHeader.m_ThreadIdBytes);
-}
-
-void TimelineDirectoryCaptureCommandHandler::Print()
-{
- std::string header;
-
- header.append(profiling::CentreAlignFormatting("decl_id", 12));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("decl_name", 20));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("ui_name", 20));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("arg_types", 16));
- header.append(" | ");
- header.append(profiling::CentreAlignFormatting("arg_names", 80));
- header.append("\n");
-
- std::cout << "\n" << "\n";
- std::cout << profiling::CentreAlignFormatting("SW DIRECTORY", static_cast<int>(header.size()));
- std::cout << "\n";
- std::cout << std::string(header.size(), '=') << "\n";
-
- std::cout << header;
-
- for (const auto& swTraceMessage : m_SwTraceMessages)
- {
- std::string body;
-
- body.append(profiling::CentreAlignFormatting(std::to_string(swTraceMessage.m_Id), 12));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(swTraceMessage.m_Name, 20));
- body.append(" | ");
- body.append(profiling::CentreAlignFormatting(swTraceMessage.m_UiName, 20));
- body.append(" | ");
-
- std::string argTypes;
- for (auto argType: swTraceMessage.m_ArgTypes)
- {
- argTypes += argType;
- argTypes += " ";
- }
- body.append(profiling::CentreAlignFormatting(argTypes, 16));
- body.append(" | ");
-
- std::string argNames;
- for (auto argName: swTraceMessage.m_ArgNames)
- {
- argNames += argName + " ";
- }
- body.append(profiling::CentreAlignFormatting(argNames, 80));
-
- body.append("\n");
-
- std::cout << std::string(body.size(), '-') << "\n";
-
- std::cout << body;
- }
-}
-
-void TimelineDirectoryCaptureCommandHandler::operator()(const profiling::Packet& packet)
-{
- ParseData(packet);
-
- if (!m_QuietOperation)
- {
- Print();
- }
-}
-
-} //namespace gatordmock
-
-} //namespace armnn
diff --git a/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.hpp b/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.hpp
deleted file mode 100644
index 2879052340..0000000000
--- a/src/timelineDecoder/TimelineDirectoryCaptureCommandHandler.hpp
+++ /dev/null
@@ -1,52 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#pragma once
-
-#include "TimelineCaptureCommandHandler.hpp"
-
-#include <Packet.hpp>
-#include <PacketBuffer.hpp>
-#include <ProfilingUtils.hpp>
-
-namespace armnn
-{
-
-namespace timelinedecoder
-{
-
-class TimelineDirectoryCaptureCommandHandler : public profiling::CommandHandlerFunctor
-{
- // Utils
- uint32_t uint8_t_size = sizeof(uint8_t);
- uint32_t uint32_t_size = sizeof(uint32_t);
-
-public:
- TimelineDirectoryCaptureCommandHandler(uint32_t familyId,
- uint32_t packetId,
- uint32_t version,
- TimelineCaptureCommandHandler& timelineCaptureCommandHandler,
- bool quietOperation = false)
- : CommandHandlerFunctor(familyId, packetId, version)
- , m_TimelineCaptureCommandHandler(timelineCaptureCommandHandler)
- , m_QuietOperation(quietOperation)
- {}
-
- void operator()(const armnn::profiling::Packet& packet) override;
-
- profiling::SwTraceHeader m_SwTraceHeader;
- std::vector<profiling::SwTraceMessage> m_SwTraceMessages;
-
-private:
- void ParseData(const armnn::profiling::Packet& packet);
- void Print();
-
- TimelineCaptureCommandHandler& m_TimelineCaptureCommandHandler;
- bool m_QuietOperation;
-};
-
-} //namespace gatordmock
-
-} //namespace armnn
diff --git a/src/timelineDecoder/tests/JSONTimelineDecoderTests.cpp b/src/timelineDecoder/tests/JSONTimelineDecoderTests.cpp
index 3961f9bfb5..dfe5fd0609 100644
--- a/src/timelineDecoder/tests/JSONTimelineDecoderTests.cpp
+++ b/src/timelineDecoder/tests/JSONTimelineDecoderTests.cpp
@@ -4,8 +4,8 @@
//
#include <JSONTimelineDecoder.hpp>
-#include <TimelineCaptureCommandHandler.hpp>
-#include <TimelineDecoder.hpp>
+#include <server/include/timelineDecoder/TimelineCaptureCommandHandler.hpp>
+#include <server/include/timelineDecoder/TimelineDecoder.hpp>
#include <Filesystem.hpp>
#include <boost/test/test_tools.hpp>
@@ -23,661 +23,661 @@ void RunSimpleModelThroughDecoder(JSONTimelineDecoder& timelineDecoder)
/*
* Building Simple model structure to test
*/
- ITimelineDecoder::Label name;
+ arm::pipe::ITimelineDecoder::Label name;
name.m_Guid = uint64_t(10420554295983197538U);
name.m_Name = "name";
timelineDecoder.CreateLabel(name);
- ITimelineDecoder::Label type;
+ arm::pipe::ITimelineDecoder::Label type;
type.m_Guid = uint64_t(14196220359693045352U);
type.m_Name = "type";
timelineDecoder.CreateLabel(type);
- ITimelineDecoder::Label index;
+ arm::pipe::ITimelineDecoder::Label index;
index.m_Guid = uint64_t(13922236767355949814U);
index.m_Name = "index";
timelineDecoder.CreateLabel(index);
- ITimelineDecoder::Label backendId;
+ arm::pipe::ITimelineDecoder::Label backendId;
backendId.m_Guid = uint64_t(10874037804557439415U);
backendId.m_Name = "backendId";
timelineDecoder.CreateLabel(backendId);
- ITimelineDecoder::Label layer;
+ arm::pipe::ITimelineDecoder::Label layer;
layer.m_Guid = uint64_t(14761340794127440397U);
layer.m_Name = "layer";
timelineDecoder.CreateLabel(layer);
- ITimelineDecoder::Label workload;
+ arm::pipe::ITimelineDecoder::Label workload;
workload.m_Guid = uint64_t(15704252740552608110U);
workload.m_Name = "workload";
timelineDecoder.CreateLabel(workload);
- ITimelineDecoder::Label network;
+ arm::pipe::ITimelineDecoder::Label network;
network.m_Guid = uint64_t(16862199137063532871U);
network.m_Name = "network";
timelineDecoder.CreateLabel(network);
- ITimelineDecoder::Label connection;
+ arm::pipe::ITimelineDecoder::Label connection;
connection.m_Guid = uint64_t(15733717748792475675U);
connection.m_Name = "connection";
timelineDecoder.CreateLabel(connection);
- ITimelineDecoder::Label inference;
+ arm::pipe::ITimelineDecoder::Label inference;
inference.m_Guid = uint64_t(15026600058430441282U);
inference.m_Name = "inference";
timelineDecoder.CreateLabel(inference);
- ITimelineDecoder::Label workload_execution;
+ arm::pipe::ITimelineDecoder::Label workload_execution;
workload_execution.m_Guid = uint64_t(10172155312650606003U);
workload_execution.m_Name = "workload_execution";
timelineDecoder.CreateLabel(workload_execution);
- ITimelineDecoder::EventClass eventClass1;
+ arm::pipe::ITimelineDecoder::EventClass eventClass1;
eventClass1.m_Guid = uint64_t(17170418158534996719U);
timelineDecoder.CreateEventClass(eventClass1);
- ITimelineDecoder::EventClass eventClass2;
+ arm::pipe::ITimelineDecoder::EventClass eventClass2;
eventClass2.m_Guid = uint64_t(10812061579584851344U);
timelineDecoder.CreateEventClass(eventClass2);
- ITimelineDecoder::Entity entity6;
+ arm::pipe::ITimelineDecoder::Entity entity6;
entity6.m_Guid = uint64_t(6);
timelineDecoder.CreateEntity(entity6);
- ITimelineDecoder::Relationship relationship7;
+ arm::pipe::ITimelineDecoder::Relationship relationship7;
relationship7.m_Guid = uint64_t(7);
- relationship7.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship7.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship7.m_HeadGuid = uint64_t(6);
relationship7.m_TailGuid = uint64_t(16862199137063532871U);
timelineDecoder.CreateRelationship(relationship7);
- ITimelineDecoder::Relationship relationship8;
+ arm::pipe::ITimelineDecoder::Relationship relationship8;
relationship8.m_Guid = uint64_t(8);
- relationship8.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship8.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship8.m_HeadGuid = uint64_t(7);
relationship8.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship8);
// Adding normalization layer
- ITimelineDecoder::Entity entity0;
+ arm::pipe::ITimelineDecoder::Entity entity0;
entity0.m_Guid = uint64_t(0);
timelineDecoder.CreateEntity(entity0);
- ITimelineDecoder::Label input;
+ arm::pipe::ITimelineDecoder::Label input;
input.m_Guid = uint64_t(18179123836411086572U);
input.m_Name = "input";
timelineDecoder.CreateLabel(input);
- ITimelineDecoder::Relationship relationship9;
+ arm::pipe::ITimelineDecoder::Relationship relationship9;
relationship9.m_Guid = uint64_t(9);
- relationship9.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship9.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship9.m_HeadGuid = uint64_t(0);
relationship9.m_TailGuid = uint64_t(18179123836411086572U);
timelineDecoder.CreateRelationship(relationship9);
- ITimelineDecoder::Relationship relationship10;
+ arm::pipe::ITimelineDecoder::Relationship relationship10;
relationship10.m_Guid = uint64_t(10);
- relationship10.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship10.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship10.m_HeadGuid = uint64_t(9);
relationship10.m_TailGuid = uint64_t(10420554295983197538U);
timelineDecoder.CreateRelationship(relationship10);
- ITimelineDecoder::Relationship relationship11;
+ arm::pipe::ITimelineDecoder::Relationship relationship11;
relationship11.m_Guid = uint64_t(11);
- relationship11.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship11.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship11.m_HeadGuid = uint64_t(0);
relationship11.m_TailGuid = uint64_t(14761340794127440397U);
timelineDecoder.CreateRelationship(relationship11);
- ITimelineDecoder::Relationship relationship12;
+ arm::pipe::ITimelineDecoder::Relationship relationship12;
relationship12.m_Guid = uint64_t(12);
- relationship12.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship12.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship12.m_HeadGuid = uint64_t(11);
relationship12.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship12);
- ITimelineDecoder::Relationship relationship13;
+ arm::pipe::ITimelineDecoder::Relationship relationship13;
relationship13.m_Guid = uint64_t(13);
- relationship13.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship13.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship13.m_HeadGuid = uint64_t(6);
relationship13.m_TailGuid = uint64_t(0);
timelineDecoder.CreateRelationship(relationship13);
// Adding normalization layer
- ITimelineDecoder::Entity entity1;
+ arm::pipe::ITimelineDecoder::Entity entity1;
entity1.m_Guid = uint64_t(1);
timelineDecoder.CreateEntity(entity1);
- ITimelineDecoder::Label normalization;
+ arm::pipe::ITimelineDecoder::Label normalization;
normalization.m_Guid = uint64_t(15955949569988957863U);
normalization.m_Name = "normalization";
timelineDecoder.CreateLabel(normalization);
- ITimelineDecoder::Relationship relationship14;
+ arm::pipe::ITimelineDecoder::Relationship relationship14;
relationship14.m_Guid = uint64_t(14);
- relationship14.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship14.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship14.m_HeadGuid = uint64_t(1);
relationship14.m_TailGuid = uint64_t(15955949569988957863U);
timelineDecoder.CreateRelationship(relationship14);
- ITimelineDecoder::Relationship relationship15;
+ arm::pipe::ITimelineDecoder::Relationship relationship15;
relationship15.m_Guid = uint64_t(15);
- relationship15.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship15.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship15.m_HeadGuid = uint64_t(14);
relationship15.m_TailGuid = uint64_t(10420554295983197538U);
timelineDecoder.CreateRelationship(relationship15);
- ITimelineDecoder::Relationship relationship16;
+ arm::pipe::ITimelineDecoder::Relationship relationship16;
relationship16.m_Guid = uint64_t(16);
- relationship16.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship16.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship16.m_HeadGuid = uint64_t(1);
relationship16.m_TailGuid = uint64_t(14761340794127440397U);
timelineDecoder.CreateRelationship(relationship16);
- ITimelineDecoder::Relationship relationship17;
+ arm::pipe::ITimelineDecoder::Relationship relationship17;
relationship17.m_Guid = uint64_t(17);
- relationship17.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship17.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship17.m_HeadGuid = uint64_t(16);
relationship17.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship17);
- ITimelineDecoder::Relationship relationship18;
+ arm::pipe::ITimelineDecoder::Relationship relationship18;
relationship18.m_Guid = uint64_t(18);
- relationship18.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship18.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship18.m_HeadGuid = uint64_t(6);
relationship18.m_TailGuid = uint64_t(1);
timelineDecoder.CreateRelationship(relationship18);
- ITimelineDecoder::Relationship relationship19;
+ arm::pipe::ITimelineDecoder::Relationship relationship19;
relationship19.m_Guid = uint64_t(19);
- relationship19.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship19.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship19.m_HeadGuid = uint64_t(0);
relationship19.m_TailGuid = uint64_t(1);
timelineDecoder.CreateRelationship(relationship19);
- ITimelineDecoder::Relationship relationship20;
+ arm::pipe::ITimelineDecoder::Relationship relationship20;
relationship20.m_Guid = uint64_t(20);
- relationship20.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship20.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship20.m_HeadGuid = uint64_t(19);
relationship20.m_TailGuid = uint64_t(15733717748792475675U);
timelineDecoder.CreateRelationship(relationship20);
- ITimelineDecoder::Relationship relationship21;
+ arm::pipe::ITimelineDecoder::Relationship relationship21;
relationship21.m_Guid = uint64_t(21);
- relationship21.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship21.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship21.m_HeadGuid = uint64_t(20);
relationship21.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship21);
- ITimelineDecoder::Entity entity22;
+ arm::pipe::ITimelineDecoder::Entity entity22;
entity22.m_Guid = uint64_t(22);
timelineDecoder.CreateEntity(entity22);
- ITimelineDecoder::Relationship relationship23;
+ arm::pipe::ITimelineDecoder::Relationship relationship23;
relationship23.m_Guid = uint64_t(23);
- relationship23.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship23.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship23.m_HeadGuid = uint64_t(22);
relationship23.m_TailGuid = uint64_t(15704252740552608110U);
timelineDecoder.CreateRelationship(relationship23);
- ITimelineDecoder::Relationship relationship24;
+ arm::pipe::ITimelineDecoder::Relationship relationship24;
relationship24.m_Guid = uint64_t(24);
- relationship24.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship24.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship24.m_HeadGuid = uint64_t(23);
relationship24.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship24);
- ITimelineDecoder::Label CpuRef;
+ arm::pipe::ITimelineDecoder::Label CpuRef;
CpuRef.m_Guid = uint64_t(9690680943817437852U);
CpuRef.m_Name = "CpuRef";
timelineDecoder.CreateLabel(CpuRef);
- ITimelineDecoder::Relationship relationship25;
+ arm::pipe::ITimelineDecoder::Relationship relationship25;
relationship25.m_Guid = uint64_t(25);
- relationship25.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship25.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship25.m_HeadGuid = uint64_t(22);
relationship25.m_TailGuid = uint64_t(9690680943817437852U);
timelineDecoder.CreateRelationship(relationship25);
- ITimelineDecoder::Relationship relationship26;
+ arm::pipe::ITimelineDecoder::Relationship relationship26;
relationship26.m_Guid = uint64_t(26);
- relationship26.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship26.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship26.m_HeadGuid = uint64_t(25);
relationship26.m_TailGuid = uint64_t(10874037804557439415U);
timelineDecoder.CreateRelationship(relationship26);
- ITimelineDecoder::Relationship relationship27;
+ arm::pipe::ITimelineDecoder::Relationship relationship27;
relationship27.m_Guid = uint64_t(27);
- relationship27.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink ;
+ relationship27.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink ;
relationship27.m_HeadGuid = uint64_t(1);
relationship27.m_TailGuid = uint64_t(22);
timelineDecoder.CreateRelationship(relationship27);
// Adding output layer
- ITimelineDecoder::Entity entity2;
+ arm::pipe::ITimelineDecoder::Entity entity2;
entity2.m_Guid = uint64_t(2);
timelineDecoder.CreateEntity(entity2);
- ITimelineDecoder::Label output;
+ arm::pipe::ITimelineDecoder::Label output;
output.m_Guid = uint64_t(18419179028513879730U);
output.m_Name = "output";
timelineDecoder.CreateLabel(output);
- ITimelineDecoder::Relationship relationship28;
+ arm::pipe::ITimelineDecoder::Relationship relationship28;
relationship28.m_Guid = uint64_t(28);
- relationship28.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship28.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship28.m_HeadGuid = uint64_t(2);
relationship28.m_TailGuid = uint64_t(18419179028513879730U);
timelineDecoder.CreateRelationship(relationship28);
- ITimelineDecoder::Relationship relationship29;
+ arm::pipe::ITimelineDecoder::Relationship relationship29;
relationship29.m_Guid = uint64_t(29);
- relationship29.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship29.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship29.m_HeadGuid = uint64_t(28);
relationship29.m_TailGuid = uint64_t(10420554295983197538U);
timelineDecoder.CreateRelationship(relationship29);
- ITimelineDecoder::Relationship relationship30;
+ arm::pipe::ITimelineDecoder::Relationship relationship30;
relationship30.m_Guid = uint64_t(30);
- relationship30.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship30.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship30.m_HeadGuid = uint64_t(2);
relationship30.m_TailGuid = uint64_t(14761340794127440397U);
timelineDecoder.CreateRelationship(relationship30);
- ITimelineDecoder::Relationship relationship31;
+ arm::pipe::ITimelineDecoder::Relationship relationship31;
relationship31.m_Guid = uint64_t(31);
- relationship31.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship31.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship31.m_HeadGuid = uint64_t(30);
relationship31.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship31);
- ITimelineDecoder::Relationship relationship32;
+ arm::pipe::ITimelineDecoder::Relationship relationship32;
relationship32.m_Guid = uint64_t(32);
- relationship32.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship32.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship32.m_HeadGuid = uint64_t(6);
relationship32.m_TailGuid = uint64_t(2);
timelineDecoder.CreateRelationship(relationship32);
- ITimelineDecoder::Relationship relationship33;
+ arm::pipe::ITimelineDecoder::Relationship relationship33;
relationship33.m_Guid = uint64_t(33);
- relationship33.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship33.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship33.m_HeadGuid = uint64_t(1);
relationship33.m_TailGuid = uint64_t(2);
timelineDecoder.CreateRelationship(relationship33);
- ITimelineDecoder::Relationship relationship34;
+ arm::pipe::ITimelineDecoder::Relationship relationship34;
relationship34.m_Guid = uint64_t(34);
- relationship34.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship34.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship34.m_HeadGuid = uint64_t(33);
relationship34.m_TailGuid = uint64_t(15733717748792475675U);
timelineDecoder.CreateRelationship(relationship34);
- ITimelineDecoder::Relationship relationship35;
+ arm::pipe::ITimelineDecoder::Relationship relationship35;
relationship35.m_Guid = uint64_t(35);
- relationship35.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship35.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship35.m_HeadGuid = uint64_t(34);
relationship35.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship35);
- ITimelineDecoder::Entity entity36;
+ arm::pipe::ITimelineDecoder::Entity entity36;
entity36.m_Guid = uint64_t(36);
timelineDecoder.CreateEntity(entity36);
- ITimelineDecoder::Relationship relationship37;
+ arm::pipe::ITimelineDecoder::Relationship relationship37;
relationship37.m_Guid = uint64_t(37);
- relationship37.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship37.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship37.m_HeadGuid = uint64_t(36);
relationship37.m_TailGuid = uint64_t(15704252740552608110U);
timelineDecoder.CreateRelationship(relationship37);
- ITimelineDecoder::Relationship relationship38;
+ arm::pipe::ITimelineDecoder::Relationship relationship38;
relationship38.m_Guid = uint64_t(38);
- relationship38.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship38.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship38.m_HeadGuid = uint64_t(37);
relationship38.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship38);
- ITimelineDecoder::Relationship relationship39;
+ arm::pipe::ITimelineDecoder::Relationship relationship39;
relationship39.m_Guid = uint64_t(39);
- relationship39.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship39.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship39.m_HeadGuid = uint64_t(36);
relationship39.m_TailGuid = uint64_t(9690680943817437852U);
timelineDecoder.CreateRelationship(relationship39);
- ITimelineDecoder::Relationship relationship40;
+ arm::pipe::ITimelineDecoder::Relationship relationship40;
relationship40.m_Guid = uint64_t(40);
- relationship40.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship40.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship40.m_HeadGuid = uint64_t(39);
relationship40.m_TailGuid = uint64_t(10874037804557439415U);
timelineDecoder.CreateRelationship(relationship40);
- ITimelineDecoder::Relationship relationship41;
+ arm::pipe::ITimelineDecoder::Relationship relationship41;
relationship41.m_Guid = uint64_t(41);
- relationship41.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship41.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship41.m_HeadGuid = uint64_t(0);
relationship41.m_TailGuid = uint64_t(36);
timelineDecoder.CreateRelationship(relationship41);
- ITimelineDecoder::Entity entity42;
+ arm::pipe::ITimelineDecoder::Entity entity42;
entity42.m_Guid = uint64_t(42);
timelineDecoder.CreateEntity(entity42);
- ITimelineDecoder::Relationship relationship43;
+ arm::pipe::ITimelineDecoder::Relationship relationship43;
relationship43.m_Guid = uint64_t(43);
- relationship43.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship43.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship43.m_HeadGuid = uint64_t(42);
relationship43.m_TailGuid = uint64_t(15704252740552608110U);
timelineDecoder.CreateRelationship(relationship43);
- ITimelineDecoder::Relationship relationship44;
+ arm::pipe::ITimelineDecoder::Relationship relationship44;
relationship44.m_Guid = uint64_t(44);
- relationship44.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship44.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship44.m_HeadGuid = uint64_t(43);
relationship44.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship44);
- ITimelineDecoder::Relationship relationship45;
+ arm::pipe::ITimelineDecoder::Relationship relationship45;
relationship45.m_Guid = uint64_t(45);
- relationship45.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship45.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship45.m_HeadGuid = uint64_t(42);
relationship45.m_TailGuid = uint64_t(9690680943817437852U);
timelineDecoder.CreateRelationship(relationship45);
- ITimelineDecoder::Relationship relationship46;
+ arm::pipe::ITimelineDecoder::Relationship relationship46;
relationship46.m_Guid = uint64_t(46);
- relationship46.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship46.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship46.m_HeadGuid = uint64_t(45);
relationship46.m_TailGuid = uint64_t(10874037804557439415U);
timelineDecoder.CreateRelationship(relationship46);
- ITimelineDecoder::Relationship relationship47;
+ arm::pipe::ITimelineDecoder::Relationship relationship47;
relationship47.m_Guid = uint64_t(47);
- relationship47.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship47.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship47.m_HeadGuid = uint64_t(2);
relationship47.m_TailGuid = uint64_t(42);
timelineDecoder.CreateRelationship(relationship47);
- ITimelineDecoder::Entity entity48;
+ arm::pipe::ITimelineDecoder::Entity entity48;
entity48.m_Guid = uint64_t(48);
timelineDecoder.CreateEntity(entity48);
- ITimelineDecoder::Relationship relationship49;
+ arm::pipe::ITimelineDecoder::Relationship relationship49;
relationship49.m_Guid = uint64_t(49);
- relationship49.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship49.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship49.m_HeadGuid = uint64_t(48);
relationship49.m_TailGuid = uint64_t(15026600058430441282U);
timelineDecoder.CreateRelationship(relationship49);
- ITimelineDecoder::Relationship relationship50;
+ arm::pipe::ITimelineDecoder::Relationship relationship50;
relationship50.m_Guid = uint64_t(50);
- relationship50.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship50.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship50.m_HeadGuid = uint64_t(49);
relationship50.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship50);
- ITimelineDecoder::Relationship relationship51;
+ arm::pipe::ITimelineDecoder::Relationship relationship51;
relationship51.m_Guid = uint64_t(51);
- relationship51.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship51.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship51.m_HeadGuid = uint64_t(6);
relationship51.m_TailGuid = uint64_t(48);
timelineDecoder.CreateRelationship(relationship51);
- ITimelineDecoder::Relationship relationship53;
+ arm::pipe::ITimelineDecoder::Relationship relationship53;
relationship53.m_Guid = uint64_t(53);
- relationship53.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship53.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship53.m_HeadGuid = uint64_t(48);
relationship53.m_TailGuid = uint64_t(52);
timelineDecoder.CreateRelationship(relationship53);
- ITimelineDecoder::Relationship relationship54;
+ arm::pipe::ITimelineDecoder::Relationship relationship54;
relationship54.m_Guid = uint64_t(54);
- relationship54.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship54.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship54.m_HeadGuid = uint64_t(52);
relationship54.m_TailGuid = uint64_t(17170418158534996719U);
timelineDecoder.CreateRelationship(relationship54);
- ITimelineDecoder::Entity entity55;
+ arm::pipe::ITimelineDecoder::Entity entity55;
entity55.m_Guid = uint64_t(55);
timelineDecoder.CreateEntity(entity55);
- ITimelineDecoder::Relationship relationship56;
+ arm::pipe::ITimelineDecoder::Relationship relationship56;
relationship56.m_Guid = uint64_t(56);
- relationship56.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship56.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship56.m_HeadGuid = uint64_t(55);
relationship56.m_TailGuid = uint64_t(10172155312650606003U);
timelineDecoder.CreateRelationship(relationship56);
- ITimelineDecoder::Relationship relationship57;
+ arm::pipe::ITimelineDecoder::Relationship relationship57;
relationship57.m_Guid = uint64_t(57);
- relationship57.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship57.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship57.m_HeadGuid = uint64_t(56);
relationship57.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship57);
- ITimelineDecoder::Relationship relationship58;
+ arm::pipe::ITimelineDecoder::Relationship relationship58;
relationship58.m_Guid = uint64_t(58);
- relationship58.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship58.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship58.m_HeadGuid = uint64_t(48);
relationship58.m_TailGuid = uint64_t(55);
timelineDecoder.CreateRelationship(relationship58);
- ITimelineDecoder::Relationship relationship59;
+ arm::pipe::ITimelineDecoder::Relationship relationship59;
relationship59.m_Guid = uint64_t(59);
- relationship59.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship59.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship59.m_HeadGuid = uint64_t(36);
relationship59.m_TailGuid = uint64_t(55);
timelineDecoder.CreateRelationship(relationship59);
- ITimelineDecoder::Event event60;
+ arm::pipe::ITimelineDecoder::Event event60;
event60.m_Guid = uint64_t(60);
event60.m_TimeStamp = uint64_t(96557081111036);
event60.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event60);
- ITimelineDecoder::Relationship relationship61;
+ arm::pipe::ITimelineDecoder::Relationship relationship61;
relationship61.m_Guid = uint64_t(61);
- relationship61.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship61.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship61.m_HeadGuid = uint64_t(55);
relationship61.m_TailGuid = uint64_t(60);
timelineDecoder.CreateRelationship(relationship61);
- ITimelineDecoder::Relationship relationship62;
+ arm::pipe::ITimelineDecoder::Relationship relationship62;
relationship62.m_Guid = uint64_t(62);
- relationship62.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship62.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship62.m_HeadGuid = uint64_t(60);
relationship62.m_TailGuid = uint64_t(17170418158534996719U);
timelineDecoder.CreateRelationship(relationship62);
- ITimelineDecoder::Event event63;
+ arm::pipe::ITimelineDecoder::Event event63;
event63.m_Guid = uint64_t(63);
event63.m_TimeStamp = uint64_t(96557081149730);
event63.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event63);
- ITimelineDecoder::Relationship relationship64;
+ arm::pipe::ITimelineDecoder::Relationship relationship64;
relationship64.m_Guid = uint64_t(61);
- relationship64.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship64.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship64.m_HeadGuid = uint64_t(55);
relationship64.m_TailGuid = uint64_t(63);
timelineDecoder.CreateRelationship(relationship64);
- ITimelineDecoder::Relationship relationship65;
+ arm::pipe::ITimelineDecoder::Relationship relationship65;
relationship65.m_Guid = uint64_t(62);
- relationship65.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship65.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship65.m_HeadGuid = uint64_t(63);
relationship65.m_TailGuid = uint64_t(10812061579584851344U);
timelineDecoder.CreateRelationship(relationship65);
- ITimelineDecoder::Entity entity66;
+ arm::pipe::ITimelineDecoder::Entity entity66;
entity66.m_Guid = uint64_t(66);
timelineDecoder.CreateEntity(entity66);
- ITimelineDecoder::Relationship relationship67;
+ arm::pipe::ITimelineDecoder::Relationship relationship67;
relationship67.m_Guid = uint64_t(67);
- relationship67.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship67.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship67.m_HeadGuid = uint64_t(66);
relationship67.m_TailGuid = uint64_t(10172155312650606003U);
timelineDecoder.CreateRelationship(relationship67);
- ITimelineDecoder::Relationship relationship68;
+ arm::pipe::ITimelineDecoder::Relationship relationship68;
relationship68.m_Guid = uint64_t(68);
- relationship68.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship68.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship68.m_HeadGuid = uint64_t(67);
relationship68.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship68);
- ITimelineDecoder::Relationship relationship69;
+ arm::pipe::ITimelineDecoder::Relationship relationship69;
relationship69.m_Guid = uint64_t(69);
- relationship69.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship69.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship69.m_HeadGuid = uint64_t(48);
relationship69.m_TailGuid = uint64_t(66);
timelineDecoder.CreateRelationship(relationship69);
- ITimelineDecoder::Relationship relationship70;
+ arm::pipe::ITimelineDecoder::Relationship relationship70;
relationship70.m_Guid = uint64_t(70);
- relationship70.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship70.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship70.m_HeadGuid = uint64_t(22);
relationship70.m_TailGuid = uint64_t(66);
timelineDecoder.CreateRelationship(relationship70);
- ITimelineDecoder::Event event71;
+ arm::pipe::ITimelineDecoder::Event event71;
event71.m_Guid = uint64_t(71);
event71.m_TimeStamp = uint64_t(96557081156464);
event71.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event71);
- ITimelineDecoder::Relationship relationship72;
+ arm::pipe::ITimelineDecoder::Relationship relationship72;
relationship72.m_Guid = uint64_t(72);
- relationship72.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship72.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship72.m_HeadGuid = uint64_t(66);
relationship72.m_TailGuid = uint64_t(71);
timelineDecoder.CreateRelationship(relationship72);
- ITimelineDecoder::Relationship relationship73;
+ arm::pipe::ITimelineDecoder::Relationship relationship73;
relationship73.m_Guid = uint64_t(73);
- relationship73.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship73.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship73.m_HeadGuid = uint64_t(71);
relationship73.m_TailGuid = uint64_t(17170418158534996719U);
timelineDecoder.CreateRelationship(relationship73);
- ITimelineDecoder::Event event74;
+ arm::pipe::ITimelineDecoder::Event event74;
event74.m_Guid = uint64_t(74);
event74.m_TimeStamp = uint64_t(96557081220825);
event74.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event74);
- ITimelineDecoder::Relationship relationship75;
+ arm::pipe::ITimelineDecoder::Relationship relationship75;
relationship75.m_Guid = uint64_t(75);
- relationship75.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship75.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship75.m_HeadGuid = uint64_t(66);
relationship75.m_TailGuid = uint64_t(74);
timelineDecoder.CreateRelationship(relationship75);
- ITimelineDecoder::Relationship relationship76;
+ arm::pipe::ITimelineDecoder::Relationship relationship76;
relationship76.m_Guid = uint64_t(76);
- relationship76.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship76.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship76.m_HeadGuid = uint64_t(74);
relationship76.m_TailGuid = uint64_t(10812061579584851344U);
timelineDecoder.CreateRelationship(relationship76);
- ITimelineDecoder::Entity entity77;
+ arm::pipe::ITimelineDecoder::Entity entity77;
entity77.m_Guid = uint64_t(77);
timelineDecoder.CreateEntity(entity77);
- ITimelineDecoder::Relationship relationship78;
+ arm::pipe::ITimelineDecoder::Relationship relationship78;
relationship78.m_Guid = uint64_t(78);
- relationship78.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship78.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship78.m_HeadGuid = uint64_t(77);
relationship78.m_TailGuid = uint64_t(10172155312650606003U);
timelineDecoder.CreateRelationship(relationship78);
- ITimelineDecoder::Relationship relationship79;
+ arm::pipe::ITimelineDecoder::Relationship relationship79;
relationship79.m_Guid = uint64_t(79);
- relationship79.m_RelationshipType = ITimelineDecoder::RelationshipType::LabelLink;
+ relationship79.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::LabelLink;
relationship79.m_HeadGuid = uint64_t(78);
relationship79.m_TailGuid = uint64_t(14196220359693045352U);
timelineDecoder.CreateRelationship(relationship79);
- ITimelineDecoder::Relationship relationship80;
+ arm::pipe::ITimelineDecoder::Relationship relationship80;
relationship80.m_Guid = uint64_t(80);
- relationship80.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship80.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship80.m_HeadGuid = uint64_t(48);
relationship80.m_TailGuid = uint64_t(77);
timelineDecoder.CreateRelationship(relationship80);
- ITimelineDecoder::Relationship relationship81;
+ arm::pipe::ITimelineDecoder::Relationship relationship81;
relationship81.m_Guid = uint64_t(81);
- relationship81.m_RelationshipType = ITimelineDecoder::RelationshipType::RetentionLink;
+ relationship81.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::RetentionLink;
relationship81.m_HeadGuid = uint64_t(42);
relationship81.m_TailGuid = uint64_t(77);
timelineDecoder.CreateRelationship(relationship81);
- ITimelineDecoder::Event event82;
+ arm::pipe::ITimelineDecoder::Event event82;
event82.m_Guid = uint64_t(82);
event82.m_TimeStamp = uint64_t(96557081227643);
event82.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event82);
- ITimelineDecoder::Relationship relationship83;
+ arm::pipe::ITimelineDecoder::Relationship relationship83;
relationship83.m_Guid = uint64_t(83);
- relationship83.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship83.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship83.m_HeadGuid = uint64_t(77);
relationship83.m_TailGuid = uint64_t(82);
timelineDecoder.CreateRelationship(relationship83);
- ITimelineDecoder::Relationship relationship84;
+ arm::pipe::ITimelineDecoder::Relationship relationship84;
relationship84.m_Guid = uint64_t(84);
- relationship84.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship84.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship84.m_HeadGuid = uint64_t(82);
relationship84.m_TailGuid = uint64_t(17170418158534996719U);
timelineDecoder.CreateRelationship(relationship84);
- ITimelineDecoder::Event event85;
+ arm::pipe::ITimelineDecoder::Event event85;
event85.m_Guid = uint64_t(85);
event85.m_TimeStamp = uint64_t(96557081240332);
event85.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event85);
- ITimelineDecoder::Relationship relationship86;
+ arm::pipe::ITimelineDecoder::Relationship relationship86;
relationship86.m_Guid = uint64_t(86);
- relationship86.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship86.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship86.m_HeadGuid = uint64_t(77);
relationship86.m_TailGuid = uint64_t(85);
timelineDecoder.CreateRelationship(relationship86);
- ITimelineDecoder::Relationship relationship87;
+ arm::pipe::ITimelineDecoder::Relationship relationship87;
relationship87.m_Guid = uint64_t(87);
- relationship87.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship87.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship87.m_HeadGuid = uint64_t(85);
relationship87.m_TailGuid = uint64_t(10812061579584851344U);
timelineDecoder.CreateRelationship(relationship87);
- ITimelineDecoder::Event event88;
+ arm::pipe::ITimelineDecoder::Event event88;
event88.m_Guid = uint64_t(88);
event88.m_TimeStamp = uint64_t(96557081243146);
event88.m_ThreadId = uint64_t(140522431862592);
timelineDecoder.CreateEvent(event88);
- ITimelineDecoder::Relationship relationship89;
+ arm::pipe::ITimelineDecoder::Relationship relationship89;
relationship89.m_Guid = uint64_t(89);
- relationship89.m_RelationshipType = ITimelineDecoder::RelationshipType::ExecutionLink;
+ relationship89.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::ExecutionLink;
relationship89.m_HeadGuid = uint64_t(48);
relationship89.m_TailGuid = uint64_t(88);
timelineDecoder.CreateRelationship(relationship89);
- ITimelineDecoder::Relationship relationship90;
+ arm::pipe::ITimelineDecoder::Relationship relationship90;
relationship90.m_Guid = uint64_t(90);
- relationship90.m_RelationshipType = ITimelineDecoder::RelationshipType::DataLink;
+ relationship90.m_RelationshipType = arm::pipe::ITimelineDecoder::RelationshipType::DataLink;
relationship90.m_HeadGuid = uint64_t(88);
relationship90.m_TailGuid = uint64_t(10812061579584851344U);
timelineDecoder.CreateRelationship(relationship90);
diff --git a/src/timelineDecoder/tests/TimelineTests.cpp b/src/timelineDecoder/tests/TimelineTests.cpp
deleted file mode 100644
index ceb955d131..0000000000
--- a/src/timelineDecoder/tests/TimelineTests.cpp
+++ /dev/null
@@ -1,369 +0,0 @@
-//
-// Copyright © 2019 Arm Ltd and Contributors. All rights reserved.
-// SPDX-License-Identifier: MIT
-//
-
-#include <TimelineCaptureCommandHandler.hpp>
-#include <TimelineDirectoryCaptureCommandHandler.hpp>
-#include <TimelineDecoder.hpp>
-
-#include <CommandHandlerFunctor.hpp>
-#include <Threads.hpp>
-#include <ProfilingService.hpp>
-#include <PacketBuffer.hpp>
-#include <TimelinePacketWriterFactory.hpp>
-
-#include <boost/test/test_tools.hpp>
-#include <boost/test/unit_test_suite.hpp>
-
-BOOST_AUTO_TEST_SUITE(TimelineDecoderTests)
-
-using namespace armnn;
-using namespace timelinedecoder;
-
-void SendTimelinePacketToCommandHandler(const unsigned char* packetBuffer,
- profiling::CommandHandlerFunctor &CommandHandler)
-{
- uint32_t uint32_t_size = sizeof(uint32_t);
- unsigned int offset = 0;
-
- uint32_t header[2];
- header[0] = profiling::ReadUint32(packetBuffer, offset);
- offset += uint32_t_size;
- header[1] = profiling::ReadUint32(packetBuffer, offset);
- offset += uint32_t_size;
- uint32_t PacketDataLength = header[1] & 0x00FFFFFF;
-
- auto uniquePacketData = std::make_unique<unsigned char[]>(PacketDataLength);
- std::memcpy(uniquePacketData.get(), packetBuffer + offset, PacketDataLength);
-
- armnn::profiling::Packet packet(header[0], PacketDataLength, uniquePacketData);
-
- BOOST_CHECK(std::memcmp(packetBuffer + offset, packet.GetData(), packet.GetLength()) == 0);
-
- CommandHandler(packet);
-}
-
-void PushEntity(TimelineDecoder::Model& model, const ITimelineDecoder::Entity entity)
-{
- model.m_Entities.emplace_back(entity);
-}
-
-void PushEventClass(TimelineDecoder::Model& model, const ITimelineDecoder::EventClass eventClass)
-{
- model.m_EventClasses.emplace_back(eventClass);
-}
-
-void PushEvent(TimelineDecoder::Model& model, const ITimelineDecoder::Event event)
-{
- model.m_Events.emplace_back(event);
-}
-
-void PushLabel(TimelineDecoder::Model& model, const ITimelineDecoder::Label label)
-{
- model.m_Labels.emplace_back(label);
-}
-
-void PushRelationship(TimelineDecoder::Model& model, const ITimelineDecoder::Relationship relationship)
-{
- model.m_Relationships.emplace_back(relationship);
-}
-
-BOOST_AUTO_TEST_CASE(TimelineDirectoryTest)
-{
- uint32_t uint8_t_size = sizeof(uint8_t);
- uint32_t uint32_t_size = sizeof(uint32_t);
- uint32_t uint64_t_size = sizeof(uint64_t);
-
- profiling::BufferManager bufferManager(5);
- profiling::TimelinePacketWriterFactory timelinePacketWriterFactory(bufferManager);
-
- std::unique_ptr<profiling::ISendTimelinePacket> sendTimelinePacket =
- timelinePacketWriterFactory.GetSendTimelinePacket();
-
- profiling::PacketVersionResolver packetVersionResolver;
-
- TimelineDecoder timelineDecoder;
- TimelineCaptureCommandHandler timelineCaptureCommandHandler(
- 1, 1, packetVersionResolver.ResolvePacketVersion(1, 1).GetEncodedValue(), timelineDecoder);
-
- TimelineDirectoryCaptureCommandHandler timelineDirectoryCaptureCommandHandler(
- 1, 0, packetVersionResolver.ResolvePacketVersion(1, 0).GetEncodedValue(),
- timelineCaptureCommandHandler, true);
-
- sendTimelinePacket->SendTimelineMessageDirectoryPackage();
- sendTimelinePacket->Commit();
-
- std::vector<profiling::SwTraceMessage> swTraceBufferMessages;
-
- unsigned int offset = uint32_t_size * 2;
-
- std::unique_ptr<profiling::IPacketBuffer> packetBuffer = bufferManager.GetReadableBuffer();
-
- uint8_t readStreamVersion = ReadUint8(packetBuffer, offset);
- BOOST_CHECK(readStreamVersion == 4);
- offset += uint8_t_size;
- uint8_t readPointerBytes = ReadUint8(packetBuffer, offset);
- BOOST_CHECK(readPointerBytes == uint64_t_size);
- offset += uint8_t_size;
- uint8_t readThreadIdBytes = ReadUint8(packetBuffer, offset);
- BOOST_CHECK(readThreadIdBytes == armnn::profiling::ThreadIdSize);
- offset += uint8_t_size;
-
- uint32_t declarationSize = profiling::ReadUint32(packetBuffer, offset);
- offset += uint32_t_size;
- for(uint32_t i = 0; i < declarationSize; ++i)
- {
- swTraceBufferMessages.push_back(profiling::ReadSwTraceMessage(packetBuffer->GetReadableData(),
- offset,
- packetBuffer->GetSize()));
- }
-
- SendTimelinePacketToCommandHandler(packetBuffer->GetReadableData(), timelineDirectoryCaptureCommandHandler);
-
- for(uint32_t index = 0; index < declarationSize; ++index)
- {
- profiling::SwTraceMessage& bufferMessage = swTraceBufferMessages[index];
- profiling::SwTraceMessage& handlerMessage = timelineDirectoryCaptureCommandHandler.m_SwTraceMessages[index];
-
- BOOST_CHECK(bufferMessage.m_Name == handlerMessage.m_Name);
- BOOST_CHECK(bufferMessage.m_UiName == handlerMessage.m_UiName);
- BOOST_CHECK(bufferMessage.m_Id == handlerMessage.m_Id);
-
- BOOST_CHECK(bufferMessage.m_ArgTypes.size() == handlerMessage.m_ArgTypes.size());
- for(uint32_t i = 0; i < bufferMessage.m_ArgTypes.size(); ++i)
- {
- BOOST_CHECK(bufferMessage.m_ArgTypes[i] == handlerMessage.m_ArgTypes[i]);
- }
-
- BOOST_CHECK(bufferMessage.m_ArgNames.size() == handlerMessage.m_ArgNames.size());
- for(uint32_t i = 0; i < bufferMessage.m_ArgNames.size(); ++i)
- {
- BOOST_CHECK(bufferMessage.m_ArgNames[i] == handlerMessage.m_ArgNames[i]);
- }
- }
-}
-
-BOOST_AUTO_TEST_CASE(TimelineCaptureTest)
-{
- profiling::BufferManager bufferManager(50);
- profiling::TimelinePacketWriterFactory timelinePacketWriterFactory(bufferManager);
-
- std::unique_ptr<profiling::ISendTimelinePacket> sendTimelinePacket =
- timelinePacketWriterFactory.GetSendTimelinePacket();
-
- profiling::PacketVersionResolver packetVersionResolver;
-
- TimelineDecoder timelineDecoder;
- const TimelineDecoder::Model& model = timelineDecoder.GetModel();
-
-
- TimelineCaptureCommandHandler timelineCaptureCommandHandler(
- 1, 1, packetVersionResolver.ResolvePacketVersion(1, 1).GetEncodedValue(), timelineDecoder,
- armnn::profiling::ThreadIdSize);
-
- using Status = ITimelineDecoder::TimelineStatus;
- BOOST_CHECK(timelineDecoder.SetEntityCallback(PushEntity) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetEventClassCallback(PushEventClass) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetEventCallback(PushEvent) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetLabelCallback(PushLabel) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetRelationshipCallback(PushRelationship) == Status::TimelineStatus_Success);
-
- const uint64_t entityGuid = 111111u;
- const uint64_t eventClassGuid = 22222u;
- const uint64_t eventClassNameGuid = 22322u;
- const uint64_t timestamp = 33333u;
- const uint64_t eventGuid = 44444u;
-
- const int threadId = armnnUtils::Threads::GetCurrentThreadId();
-
- // need to do a bit of work here to extract the value from threadId
- unsigned char* uCharThreadId = new unsigned char[armnn::profiling::ThreadIdSize]();;
- uint64_t uint64ThreadId;
-
- profiling::WriteBytes(uCharThreadId, 0, &threadId, armnn::profiling::ThreadIdSize);
-
- if (armnn::profiling::ThreadIdSize == 4)
- {
- uint64ThreadId = profiling::ReadUint32(uCharThreadId, 0);
- }
- else if (armnn::profiling::ThreadIdSize == 8)
- {
- uint64ThreadId = profiling::ReadUint64(uCharThreadId, 0);
- }
- delete[] uCharThreadId;
-
- const uint64_t labelGuid = 66666u;
- std::string labelName = "test_label";
-
- const uint64_t relationshipGuid = 77777u;
- const uint64_t headGuid = 888888u;
- const uint64_t tailGuid = 999999u;
-
- for (int i = 0; i < 10; ++i)
- {
- // Send entity
- sendTimelinePacket->SendTimelineEntityBinaryPacket(entityGuid);
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
-
- // Send event class
- sendTimelinePacket->SendTimelineEventClassBinaryPacket(eventClassGuid, eventClassNameGuid);
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
-
- // Send event
- sendTimelinePacket->SendTimelineEventBinaryPacket(timestamp, threadId, eventGuid);
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
-
- // Send label
- sendTimelinePacket->SendTimelineLabelBinaryPacket(labelGuid, labelName);
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
-
- // Send relationship
- profiling::ProfilingRelationshipType relationshipType = profiling::ProfilingRelationshipType::DataLink;
- sendTimelinePacket->SendTimelineRelationshipBinaryPacket(relationshipType,
- relationshipGuid,
- headGuid,
- tailGuid,
- 0);
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
- }
-
- for (unsigned long i = 0; i < 10; ++i)
- {
- BOOST_CHECK(model.m_Entities[i].m_Guid == entityGuid);
-
- BOOST_CHECK(model.m_EventClasses[i].m_Guid == eventClassGuid);
-
- BOOST_CHECK(model.m_Events[i].m_TimeStamp == timestamp);
- BOOST_CHECK(model.m_Events[i].m_ThreadId == uint64ThreadId);
- BOOST_CHECK(model.m_Events[i].m_Guid == eventGuid);
-
- BOOST_CHECK(model.m_Labels[i].m_Guid == labelGuid);
- BOOST_CHECK(model.m_Labels[i].m_Name == labelName);
-
- BOOST_CHECK(model.m_Relationships[i].m_RelationshipType == ITimelineDecoder::RelationshipType::DataLink);
- BOOST_CHECK(model.m_Relationships[i].m_Guid == relationshipGuid);
- BOOST_CHECK(model.m_Relationships[i].m_HeadGuid == headGuid);
- BOOST_CHECK(model.m_Relationships[i].m_TailGuid == tailGuid);
- }
-}
-
-BOOST_AUTO_TEST_CASE(TimelineCaptureTestMultipleStringsInBuffer)
-{
- profiling::BufferManager bufferManager(50);
- profiling::TimelinePacketWriterFactory timelinePacketWriterFactory(bufferManager);
-
- std::unique_ptr<profiling::ISendTimelinePacket> sendTimelinePacket =
- timelinePacketWriterFactory.GetSendTimelinePacket();
-
- profiling::PacketVersionResolver packetVersionResolver;
-
- TimelineDecoder timelineDecoder;
- const TimelineDecoder::Model& model = timelineDecoder.GetModel();
-
- TimelineCaptureCommandHandler timelineCaptureCommandHandler(
- 1, 1, packetVersionResolver.ResolvePacketVersion(1, 1).GetEncodedValue(), timelineDecoder,
- armnn::profiling::ThreadIdSize);
-
- using Status = ITimelineDecoder::TimelineStatus;
- BOOST_CHECK(timelineDecoder.SetEntityCallback(PushEntity) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetEventClassCallback(PushEventClass) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetEventCallback(PushEvent) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetLabelCallback(PushLabel) == Status::TimelineStatus_Success);
- BOOST_CHECK(timelineDecoder.SetRelationshipCallback(PushRelationship) == Status::TimelineStatus_Success);
-
- const uint64_t entityGuid = 111111u;
- const uint64_t eventClassGuid = 22222u;
- const uint64_t eventClassNameGuid = 22322u;
- const uint64_t timestamp = 33333u;
- const uint64_t eventGuid = 44444u;
-
- const int threadId = armnnUtils::Threads::GetCurrentThreadId();
-
- // need to do a bit of work here to extract the value from threadId
- unsigned char* uCharThreadId = new unsigned char[armnn::profiling::ThreadIdSize]();
- uint64_t uint64ThreadId;
-
- profiling::WriteBytes(uCharThreadId, 0, &threadId, armnn::profiling::ThreadIdSize);
-
- if ( armnn::profiling::ThreadIdSize == 4 )
- {
- uint64ThreadId = profiling::ReadUint32(uCharThreadId, 0);
- }
- else if ( armnn::profiling::ThreadIdSize == 8 )
- {
- uint64ThreadId = profiling::ReadUint64(uCharThreadId, 0);
- }
- delete[] uCharThreadId;
-
- const uint64_t labelGuid = 66666u;
- std::string labelName = "test_label";
- std::string labelName2 = "test_label2";
- std::string labelName3 = "test_label32";
-
- const uint64_t relationshipGuid = 77777u;
- const uint64_t headGuid = 888888u;
- const uint64_t tailGuid = 999999u;
-
- // Check with multiple messages in the same buffer
- for ( int i = 0; i < 9; ++i )
- {
- // Send entity
- sendTimelinePacket->SendTimelineEntityBinaryPacket(entityGuid);
- // Send event class
- sendTimelinePacket->SendTimelineEventClassBinaryPacket(eventClassGuid, eventClassNameGuid);
- // Send event
- sendTimelinePacket->SendTimelineEventBinaryPacket(timestamp, threadId, eventGuid);
- // Send label
- sendTimelinePacket->SendTimelineLabelBinaryPacket(labelGuid, labelName);
- sendTimelinePacket->SendTimelineLabelBinaryPacket(labelGuid, labelName2);
- sendTimelinePacket->SendTimelineLabelBinaryPacket(labelGuid, labelName3);
- // Send relationship
- profiling::ProfilingRelationshipType relationshipType = profiling::ProfilingRelationshipType::DataLink;
- sendTimelinePacket->SendTimelineRelationshipBinaryPacket(relationshipType,
- relationshipGuid,
- headGuid,
- tailGuid,
- 0);
- }
-
- sendTimelinePacket->Commit();
- SendTimelinePacketToCommandHandler(bufferManager.GetReadableBuffer()->GetReadableData(),
- timelineCaptureCommandHandler);
-
- for ( unsigned long i = 0; i < 9; ++i )
- {
- BOOST_CHECK(model.m_Entities[i].m_Guid == entityGuid);
-
- BOOST_CHECK(model.m_EventClasses[i].m_Guid == eventClassGuid);
-
- BOOST_CHECK(model.m_Labels[i].m_Guid == labelGuid);
-
- BOOST_CHECK(model.m_Events[i].m_TimeStamp == timestamp);
- BOOST_CHECK(model.m_Events[i].m_ThreadId == uint64ThreadId);
- BOOST_CHECK(model.m_Events[i].m_Guid == eventGuid);
-
- BOOST_CHECK(model.m_Relationships[i].m_RelationshipType == ITimelineDecoder::RelationshipType::DataLink);
- BOOST_CHECK(model.m_Relationships[i].m_Guid == relationshipGuid);
- BOOST_CHECK(model.m_Relationships[i].m_HeadGuid == headGuid);
- BOOST_CHECK(model.m_Relationships[i].m_TailGuid == tailGuid);
- }
- for ( unsigned long i = 0; i < 9; i += 3 )
- {
- BOOST_CHECK(model.m_Labels[i].m_Name == labelName);
- BOOST_CHECK(model.m_Labels[i+1].m_Name == labelName2);
- BOOST_CHECK(model.m_Labels[i+2].m_Name == labelName3);
- }
-}
-
-BOOST_AUTO_TEST_SUITE_END()