13 namespace timelinedecoder
17 const TimelineCaptureCommandHandler::ReadFunction TimelineCaptureCommandHandler::m_ReadFunctions[]
26 void TimelineCaptureCommandHandler::ParseData(
const armnn::profiling::Packet& packet)
29 m_PacketLength = packet.GetLength();
33 if (m_ThreadIdSize == 0)
35 ARMNN_LOG(error) <<
"TimelineCaptureCommandHandler: m_ThreadIdSize has not been set";
39 if (packet.GetLength() < 8)
44 const unsigned char* data =
reinterpret_cast<const unsigned char*
>(packet.GetData());
48 while ( offset < m_PacketLength )
51 offset += uint32_t_size;
53 (this->*m_ReadFunctions[declId])(data, offset);
61 offset += uint64_t_size;
64 offset += uint32_t_size;
68 for ( i = 0; i < nameLength - 1; ++i )
73 uint32_t uint32WordAmount = (nameLength / uint32_t_size) + (nameLength % uint32_t_size != 0 ? 1 : 0);
74 offset += uint32WordAmount * uint32_t_size;
83 offset += uint64_t_size;
91 offset += uint64_t_size;
100 offset += uint32_t_size;
103 offset += uint64_t_size;
106 offset += uint64_t_size;
109 offset += uint64_t_size;
117 offset += uint64_t_size;
119 if ( m_ThreadIdSize == 4 )
123 else if ( m_ThreadIdSize == 8 )
128 offset += m_ThreadIdSize;
131 offset += uint64_t_size;
138 m_ThreadIdSize = size;
uint64_t ReadUint64(const IPacketBufferPtr &packetBuffer, unsigned int offset)
virtual TimelineStatus CreateEvent(const Event &)=0
virtual TimelineStatus CreateLabel(const Label &)=0
virtual TimelineStatus CreateRelationship(const Relationship &)=0
#define ARMNN_LOG(severity)
virtual TimelineStatus CreateEntity(const Entity &)=0
uint8_t ReadUint8(const IPacketBufferPtr &packetBuffer, unsigned int offset)
Copyright (c) 2020 ARM Limited.
virtual TimelineStatus CreateEventClass(const EventClass &)=0
void ReadEventClass(const unsigned char *data, uint32_t &offset)
RelationshipType m_RelationshipType
void ReadRelationship(const unsigned char *data, uint32_t &offset)
void SetThreadIdSize(uint32_t size)
void operator()(const armnn::profiling::Packet &packet) override
void ReadLabel(const unsigned char *data, uint32_t &offset)
uint32_t ReadUint32(const IPacketBufferPtr &packetBuffer, unsigned int offset)
void ReadEntity(const unsigned char *data, uint32_t &offset)
void ReadEvent(const unsigned char *data, uint32_t &offset)