From 3e9bc19ad523361e6b18057849e30c0c48183915 Mon Sep 17 00:00:00 2001 From: Jim Flynn Date: Wed, 23 Mar 2022 23:01:26 +0000 Subject: IVGCVSW-6706 Create the libpipeClient library Change-Id: I2368aade38ad3808fab55d8a86cd659d4e95d91e Signed-off-by: Jim Flynn --- src/profiling/BufferManager.hpp | 76 ----------------------------------------- 1 file changed, 76 deletions(-) delete mode 100644 src/profiling/BufferManager.hpp (limited to 'src/profiling/BufferManager.hpp') diff --git a/src/profiling/BufferManager.hpp b/src/profiling/BufferManager.hpp deleted file mode 100644 index 0ab3e0e534..0000000000 --- a/src/profiling/BufferManager.hpp +++ /dev/null @@ -1,76 +0,0 @@ -// -// Copyright © 2019 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#pragma once - -#include "IBufferManager.hpp" -#include "IConsumer.hpp" - -#include -#include -#include -#include - -namespace arm -{ - -namespace pipe -{ - -class BufferManager : public IBufferManager -{ -public: - BufferManager(unsigned int numberOfBuffers = 5, unsigned int maxPacketSize = 4096); - - ~BufferManager() {} - - IPacketBufferPtr Reserve(unsigned int requestedSize, unsigned int& reservedSize) override; - - void Reset(); - - void Commit(IPacketBufferPtr& packetBuffer, unsigned int size, bool notifyConsumer = true) override; - - void Release(IPacketBufferPtr& packetBuffer) override; - - IPacketBufferPtr GetReadableBuffer() override; - - void MarkRead(IPacketBufferPtr& packetBuffer) override; - - /// Set Consumer on the buffer manager to be notified when there is a Commit - /// Can only be one consumer - void SetConsumer(IConsumer* consumer) override; - - /// Notify the Consumer buffer can be read - void FlushReadList() override; - -private: - void Initialize(); - - // Maximum buffer size - unsigned int m_MaxBufferSize; - // Number of buffers - const unsigned int m_NumberOfBuffers; - const unsigned int m_MaxNumberOfBuffers; - unsigned int m_CurrentNumberOfBuffers; - - // List of available packet buffers - std::vector m_AvailableList; - - // List of readable packet buffers - std::queue m_ReadableList; - - // Mutex for available packet buffer list - std::mutex m_AvailableMutex; - - // Mutex for readable packet buffer list - std::mutex m_ReadableMutex; - - // Consumer thread to notify packet is ready to read - IConsumer* m_Consumer = nullptr; -}; - -} // namespace pipe - -} // namespace arm -- cgit v1.2.1