IVGCVSW-3902 Create IReadOnlyPacketBuffer, IPacketBuffer and IBufferManager interfaces
* Create IReadOnlyPacketBuffer, IPacketBuffer and IBufferManager interfaces
* Add Read and Write util functions that use IPacketBuffer
* Add MockBufferManager using IBufferManager for testing
* Modify SendCounterPacket to use IBufferManager
* Modify MockStreamCounterBuffer to use IBufferManager
* Remove IBufferWrapper and MockBuffer
* Add MockPacketBuffer for testing
* Modify unit tests to use the new interfaces
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ib86768187e032f07169aa39367a418b7665c9f03
diff --git a/src/profiling/ProfilingUtils.cpp b/src/profiling/ProfilingUtils.cpp
index 7a8c678..588fcc1 100644
--- a/src/profiling/ProfilingUtils.cpp
+++ b/src/profiling/ProfilingUtils.cpp
@@ -87,6 +87,27 @@
return counterUids;
}
+void WriteUint64(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset, uint64_t value)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ WriteUint64(packetBuffer->GetWritableData(), offset, value);
+}
+
+void WriteUint32(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset, uint32_t value)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ WriteUint32(packetBuffer->GetWritableData(), offset, value);
+}
+
+void WriteUint16(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset, uint16_t value)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ WriteUint16(packetBuffer->GetWritableData(), offset, value);
+}
+
void WriteUint64(unsigned char* buffer, unsigned int offset, uint64_t value)
{
BOOST_ASSERT(buffer);
@@ -119,6 +140,34 @@
buffer[offset + 1] = static_cast<unsigned char>((value >> 8) & 0xFF);
}
+uint64_t ReadUint64(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ return ReadUint64(packetBuffer->GetReadableData(), offset);
+}
+
+uint32_t ReadUint32(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ return ReadUint32(packetBuffer->GetReadableData(), offset);
+}
+
+uint16_t ReadUint16(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ return ReadUint16(packetBuffer->GetReadableData(), offset);
+}
+
+uint8_t ReadUint8(const std::unique_ptr<IPacketBuffer>& packetBuffer, unsigned int offset)
+{
+ BOOST_ASSERT(packetBuffer);
+
+ return ReadUint8(packetBuffer->GetReadableData(), offset);
+}
+
uint64_t ReadUint64(const unsigned char* buffer, unsigned int offset)
{
BOOST_ASSERT(buffer);