| // |
| // Copyright © 2017 Arm Ltd. All rights reserved. |
| // See LICENSE file in the project root for full license information. |
| // |
| #pragma once |
| |
| #include "arm_compute/runtime/ISimpleLifetimeManager.h" |
| |
| namespace armnn |
| { |
| |
| class OffsetLifetimeManager : public arm_compute::ISimpleLifetimeManager |
| { |
| public: |
| OffsetLifetimeManager(); |
| |
| OffsetLifetimeManager(const OffsetLifetimeManager&) = delete; |
| |
| OffsetLifetimeManager& operator=(const OffsetLifetimeManager&) = delete; |
| |
| OffsetLifetimeManager(OffsetLifetimeManager&&) = default; |
| |
| OffsetLifetimeManager& operator=(OffsetLifetimeManager&&) = default; |
| |
| std::unique_ptr<arm_compute::IMemoryPool> create_pool(arm_compute::IAllocator* allocator) override; |
| |
| arm_compute::MappingType mapping_type() const override; |
| |
| private: |
| void update_blobs_and_mappings() override; |
| |
| private: |
| /// Memory blob size |
| size_t m_BlobSize; |
| }; |
| |
| } // namespace armnn |