12 #include <boost/assert.hpp> 26 : m_BufferManager(bufferManager)
27 , m_WriteBuffer(nullptr)
52 uint64_t relationshipGuid,
54 uint64_t tailGuid)
override;
59 template <
typename Func,
typename ... Params>
60 void ForwardWriteBinaryFunction(Func& func, Params&& ... params);
64 unsigned int m_Offset;
65 unsigned int m_BufferSize;
68 template <
typename Func,
typename ... Params>
69 void SendTimelinePacket::ForwardWriteBinaryFunction(Func& func, Params&& ... params)
74 BOOST_ASSERT(m_WriteBuffer);
75 unsigned int numberOfBytesWritten = 0;
79 &m_WriteBuffer->GetWritableData()[m_Offset],
81 numberOfBytesWritten);
93 m_Offset += numberOfBytesWritten;
94 m_BufferSize -= numberOfBytesWritten;
void SendTimelineEntityBinaryPacket(uint64_t profilingGuid) override
Create and write a TimelineEntityBinaryPacket from the parameters to the buffer.
ProfilingRelationshipType
void SendTimelineLabelBinaryPacket(uint64_t profilingGuid, const std::string &label) override
Create and write a TimelineLabelBinaryPacket from the parameters to the buffer.
void SendTimelineEventClassBinaryPacket(uint64_t profilingGuid) override
Create and write a TimelineEventClassBinaryPacket from the parameters to the buffer.
std::unique_ptr< IPacketBuffer > IPacketBufferPtr
void SendTimelineMessageDirectoryPackage() override
Create and write a TimelineMessageDirectoryPackage in the buffer.
virtual void SendTimelineRelationshipBinaryPacket(ProfilingRelationshipType relationshipType, uint64_t relationshipGuid, uint64_t headGuid, uint64_t tailGuid) override
Create and write a TimelineRelationshipBinaryPacket from the parameters to the buffer.
SendTimelinePacket(IBufferManager &bufferManager)
void SendTimelineEventBinaryPacket(uint64_t timestamp, std::thread::id threadId, uint64_t profilingGuid) override
Create and write a TimelineEventBinaryPacket from the parameters to the buffer.
void Commit() override
Commits the current buffer and reset the member variables.