17 #include <condition_variable> 29 class TestTimelinePacketHandler;
49 m_Connection(nullptr),
50 m_InferenceCompleted(
false),
53 m_MessageDecoder(m_TimelineModel),
54 m_Decoder(1, 1, 0, m_MessageDecoder),
55 m_DirectoryDecoder(1, 0, 0, m_Decoder,
true)
56 { m_MessageDecoder.SetPacketHandler(
this); }
58 virtual std::vector<uint32_t> GetHeadersAccepted()
override;
60 virtual void HandlePacket(
const Packet& packet)
override;
64 void WaitOnInferenceCompletion(
unsigned int timeout);
65 void SetInferenceComplete();
71 m_Connection = profilingConnection;
75 void ProcessDirectoryPacket(
const Packet& packet);
76 void ProcessMessagePacket(
const Packet& packet);
78 std::mutex m_InferenceCompletedMutex;
79 std::condition_variable m_InferenceCompletedConditionVariable;
80 bool m_InferenceCompleted;
82 uint32_t m_DirectoryHeader;
83 uint32_t m_MessageHeader;
virtual TimelineStatus CreateRelationship(const Relationship &) override
virtual TimelineStatus CreateEvent(const Event &) override
std::pair< uint32_t, uint32_t > CreateTimelinePacketHeader(uint32_t packetFamily, uint32_t packetClass, uint32_t packetType, uint32_t streamId, uint32_t sequenceNumbered, uint32_t dataLength)
Creates a timeline packet header.
virtual TimelineStatus CreateLabel(const Label &) override
Copyright (c) 2020 ARM Limited.
const TimelineModel & GetTimelineModel() const
TimelineMessageDecoder(TimelineModel &model)
virtual TimelineStatus CreateEventClass(const EventClass &) override
virtual TimelineStatus CreateEntity(const Entity &) override
TestTimelinePacketHandler()
DataLayout::NCHW DataLayout::NCHW DataLayout::NHWC DataLayout::NHWC true
virtual void SetConnection(IProfilingConnection *profilingConnection) override
Set a profiling connection on the handler.
void SetPacketHandler(TestTimelinePacketHandler *packetHandler)