24 return app->GetDevice(handle);
27 app->DestroyDevice(handle);
Class representing a window for the platform.
Definition Application.hpp:15
The root object of everything RHI. Implementation of this class inherently defines the RHI backend.
Definition Application.hpp:11
virtual RHIApplicationScopedObjectHandle< RHIDevice > CreateDevice(RHIDevice::DeviceDesc const &desc, Native::NativeWindow *window=nullptr)=0
RHIApplication(RHIApplication const &)=delete
virtual void DestroyDevice(Handle handle)=0
virtual Core::Span< const RHIDevice::DeviceDesc > EnumerateDevices() const =0
virtual RHIDevice * GetDevice(Handle handle) const =0
Definition Device.hpp:131
Base class for all RHI objects.
Definition Details.hpp:16
std::unique_ptr< T, StlDeleter< T > > UniquePtr
std::unique_ptr with custom deleter that uses a Foundation::Core::Allocator to deallocate memory.
Definition Allocator.hpp:161
Low-level Rendering Hardware Interface (RHI) abstractions.
Definition Application.hpp:5
uint64_t Handle
Definition Details.hpp:9
Definition Device.hpp:135
static void Destroy(RHIApplication *app, Handle handle)
Definition Application.hpp:26
static RHIDevice * Get(RHIApplication const *app, Handle handle)
Definition Application.hpp:23
Provides type traits for types derived from RHIObject.
Definition Details.hpp:30