10#include "vecmem/memory/memory_resource.hpp"
11#include "vecmem/utils/sycl/queue_wrapper.hpp"
12#include "vecmem/vecmem_sycl_export.hpp"
43 std::size_t alignment)
override final;
48 const memory_resource&
other)
const noexcept override final;
SYCL memory resource base class.
Definition memory_resource_base.hpp:22
VECMEM_SYCL_EXPORT memory_resource_base(const queue_wrapper &queue={})
Constructor on top of a user-provided queue.
VECMEM_SYCL_EXPORT ~memory_resource_base()
Destructor.
queue_wrapper m_queue
The queue that the allocations are made for/on.
Definition memory_resource_base.hpp:34
virtual VECMEM_SYCL_EXPORT void do_deallocate(void *ptr, std::size_t nbytes, std::size_t alignment) override final
Function performing the memory de-allocation.
virtual VECMEM_SYCL_EXPORT bool do_is_equal(const memory_resource &other) const noexcept override final
Function comparing two memory resource instances.
Wrapper class for ::sycl::queue.
Definition queue_wrapper.hpp:23
Namespace for types that should not be used directly by clients.
Definition sycl_builtin_device_atomic_ref.hpp:18
std::vector< T, vecmem::polymorphic_allocator< T > > vector
Alias type for vectors with our polymorphic allocator.
Definition vector.hpp:35