Class MemoryResourceFactory

Inheritance Relationships

Derived Types

Class Documentation

class umpire::resource::MemoryResourceFactory

Abstract factory class for constructing MemoryResource objects.

Concrete implementations of this class are used by the MemoryResourceRegistry to construct MemoryResource objects.

See

MemoryResourceRegistry

Subclassed by umpire::resource::CudaConstantMemoryResourceFactory, umpire::resource::CudaDeviceResourceFactory, umpire::resource::CudaPinnedMemoryResourceFactory, umpire::resource::CudaUnifiedMemoryResourceFactory, umpire::resource::FileMemoryResourceFactory, umpire::resource::HipConstantMemoryResourceFactory, umpire::resource::HipDeviceResourceFactory, umpire::resource::HipPinnedMemoryResourceFactory, umpire::resource::HostResourceFactory, umpire::resource::NullMemoryResourceFactory, umpire::resource::OpenMPTargetResourceFactory, umpire::resource::SyclDeviceResourceFactory, umpire::resource::SyclPinnedMemoryResourceFactory, umpire::resource::SyclUnifiedMemoryResourceFactory

Public Functions

~MemoryResourceFactory() = default
bool isValidMemoryResourceFor(const std::string &name) noexcept = 0
std::unique_ptr<resource::MemoryResource> create(const std::string &name, int id) = 0

Construct a MemoryResource with the given name and id.

Parameters

std::unique_ptr<resource::MemoryResource> create(const std::string &name, int id, MemoryResourceTraits traits) = 0

Construct a MemoryResource with the given name and id.

Parameters

MemoryResourceTraits getDefaultTraits() = 0