// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. #pragma once #include "buffer_type.h" #include namespace vespalib::alloc { class MemoryAllocator; } namespace vespalib::datastore { /* * Class representing buffer type for a normal unique store allocator. */ template class UniqueStoreBufferType : public BufferType { std::shared_ptr _memory_allocator; public: UniqueStoreBufferType(uint32_t min_arrays, uint32_t max_arrays, uint32_t num_arrays_for_new_buffer, float alloc_grow_factor, std::shared_ptr memory_allocator) noexcept; ~UniqueStoreBufferType() override; const vespalib::alloc::MemoryAllocator* get_memory_allocator() const override; }; }