|
|
| AZ_CLASS_ALLOCATOR (StreamingImagePool, AZ::SystemAllocator, 0) |
| |
|
| AZ_RTTI (StreamingImagePool, "{466B4368-79D6-4363-91DE-3D0001159F7C}", ImagePoolBase) |
| |
|
| AZ_RHI_MULTI_DEVICE_OBJECT_GETTER (StreamingImagePool) |
| |
|
ResultCode | Init (const StreamingImagePoolDescriptor &descriptor) |
| | Initializes the pool. The pool must be initialized before images can be registered with it.
|
| |
|
ResultCode | InitImage (const StreamingImageInitRequest &request) |
| | Initializes the backing resources of an image.
|
| |
|
ResultCode | UpdateImageDeviceMask (const StreamingImageDeviceMaskRequest &request) |
| | Updates the device mask of an image instance created from this pool.
|
| |
| ResultCode | ExpandImage (const StreamingImageExpandRequest &request) |
| |
| ResultCode | TrimImage (Image &image, uint32_t targetMipLevel) |
| |
| const StreamingImagePoolDescriptor & | GetDescriptor () const override final |
| | Returns the resource pool descriptor.
|
| |
|
void | SetLowMemoryCallback (LowMemoryCallback callback) |
| |
| bool | SetMemoryBudget (size_t newBudget) |
| |
|
const HeapMemoryUsage & | GetHeapMemoryUsage (HeapMemoryLevel heapMemoryLevel) const |
| | Returns the maximum memory used by one of its pools for a specific heap type.
|
| |
|
bool | SupportTiledImage () const |
| | Return if it supports tiled image feature.
|
| |
| void | Shutdown () override final |
| | Shuts down the pool. This method will shutdown all resources associated with the pool.
|
| |
|
| AZ_RTTI (ImagePoolBase, "{CAC2167A-D65A-493F-A450-FDE2B1A883B1}", ResourcePool) |
| |
|
| AZ_RTTI (ResourcePool, "{BAE5442C-A312-4133-AE80-1200753A7C3E}", MultiDeviceObject) |
| |
| template<typename ResourceType > |
| void | ForEach (AZStd::function< void(ResourceType &)> callback) |
| |
|
template<typename ResourceType > |
| void | ForEach (AZStd::function< void(const ResourceType &)> callback) const |
| |
|
uint32_t | GetResourceCount () const |
| | Returns the number of resources in the pool.
|
| |
|
| AZ_RTTI (MultiDeviceObject, "{17D34F71-944C-4AF5-9823-627474C4C0A6}", Object) |
| |
|
bool | IsInitialized () const |
| | Returns whether the device object is initialized.
|
| |
| AZ_FORCE_INLINE bool | IsDeviceSet (int deviceIndex) const |
| |
| MultiDevice::DeviceMask | GetDeviceMask () const |
| |
|
| AZ_RTTI (Object, "{E43378F1-2331-4173-94B8-990ED20E6003}") |
| |
|
void | SetName (const Name &name) |
| | Sets the name of the object.
|
| |
|
const Name & | GetName () const |
| | Returns the name set on the object by SetName.
|
| |
|
uint32_t | use_count () |
| | Returns the current use count of the object.
|
| |
|
| template<typename T > |
| static AZ_FORCE_INLINE void | IterateDevices (MultiDevice::DeviceMask deviceMask, T callback) |
| |
| using | PlatformMethod = AZStd::function< RHI::ResultCode()> |
| | //!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//!//
|
| |
|
ResultCode | InitImage (Image *image, const ImageDescriptor &descriptor, PlatformMethod platformInitResourceMethod) |
| |
| ResultCode | Init (MultiDevice::DeviceMask deviceMask, const PlatformMethod &initMethod) |
| |
| ResultCode | InitResource (Resource *resource, const PlatformMethod &initResourceMethod) |
| |
| bool | ValidateIsRegistered (const Resource *resource) const |
| |
|
bool | ValidateIsUnregistered (const Resource *resource) const |
| |
|
bool | ValidateIsInitialized () const |
| | Validates that the resource pool is initialized and ready to service requests.
|
| |
|
void | Init (MultiDevice::DeviceMask deviceMask) |
| | The derived class should call this method to assign the device.
|
| |
|
template<typename T > |
| AZ_FORCE_INLINE void | IterateDevices (T callback) |
| | Helper method that will iterate over all selected devices and call the provided callback.
|
| |
| template<typename T , typename U > |
| AZ_FORCE_INLINE decltype(auto) | IterateObjects (U callback) |
| |
|
template<typename T , typename U > |
| AZ_FORCE_INLINE decltype(auto) | IterateObjects (U callback) const |
| |
|
template<typename T > |
| AZ_FORCE_INLINE Ptr< T > | GetDeviceObject (int deviceIndex) const |
| |
|
void | add_ref () const |
| |
| void | release () const |
| |
|
AZStd::unordered_map< int, Ptr< DeviceObject > > | m_deviceObjects |
| | A map of all device-specific objects, indexed by the device index.
|
| |
|
AZStd::atomic_int | m_useCount = 0 |
| |