|
UraniumCompute 0.1.0
A GPU accelerated parallel task scheduler
|
Public Member Functions | |
| VulkanBuffer (IComputeDevice *pDevice) | |
| ResultCode | BindMemory (const DeviceMemorySlice &deviceMemory) override |
| Bind device memory to the buffer. More... | |
| ResultCode | BindMemory (IDeviceMemory *pDeviceMemory) override |
| Bind device memory to the buffer. More... | |
| void | Reset () override |
| Reset the object to uninitialized state. More... | |
| VkBuffer | GetNativeBuffer () const |
| const VkMemoryRequirements & | GetMemoryRequirements () const |
Public Member Functions inherited from UN::BufferBase | |
| ResultCode | Init (const BufferDesc &desc) override |
| Creates and initializes a backend-specific buffer object. More... | |
Public Member Functions inherited from UN::DeviceObjectBase< IBuffer > | |
| const DescriptorType & | GetDesc () const override |
| std::string_view | GetDebugName () const override |
| IComputeDevice * | GetDevice () const override |
| UInt32 | Release () override |
Public Member Functions inherited from UN::Object< IBuffer > | |
| UInt32 | Release () override |
| Object (const Object &)=delete | |
| Object (Object &&)=delete | |
| UInt32 | AddRef () override |
| Add a strong reference to the object. More... | |
| void | AttachRefCounter (ReferenceCounter *pRefCounter) override |
| Attach a reference counter to the object. More... | |
| ReferenceCounter * | GetRefCounter () override |
| Get reference counter attached to this object. More... | |
| virtual const DescriptorType & | GetDesc () const =0 |
| virtual ResultCode | Init (const BufferDesc &desc)=0 |
| Creates and initializes a backend-specific buffer object. More... | |
| virtual ResultCode | BindMemory (const DeviceMemorySlice &deviceMemory)=0 |
| Bind device memory to the buffer. More... | |
| virtual ResultCode | BindMemory (IDeviceMemory *pDeviceMemory)=0 |
| Bind device memory to the buffer. More... | |
| virtual std::string_view | GetDebugName () const =0 |
| Get debug name of the object. | |
| virtual void | Reset ()=0 |
| Reset the object to uninitialized state. More... | |
| virtual IComputeDevice * | GetDevice () const =0 |
| Get the compute device this object was created on. More... | |
| virtual UInt32 | AddRef ()=0 |
| Add a strong reference to object's reference counter. More... | |
| virtual UInt32 | Release ()=0 |
| Remove a strong reference from object's reference counter. More... | |
| virtual void | AttachRefCounter (ReferenceCounter *counter)=0 |
| Attach a ReferenceCounter to this object. More... | |
| virtual ReferenceCounter * | GetRefCounter ()=0 |
| Get reference counter that belongs to this object. More... | |
Static Public Member Functions | |
| static ResultCode | Create (IComputeDevice *pDevice, IBuffer **ppBuffer) |
Protected Member Functions | |
| ResultCode | InitInternal (const BufferDesc &desc) override |
Protected Member Functions inherited from UN::BufferBase | |
| virtual ResultCode | InitInternal (const BufferDesc &desc)=0 |
| BufferBase (IComputeDevice *pDevice) | |
Protected Member Functions inherited from UN::DeviceObjectBase< IBuffer > | |
| void | Init (std::string_view name, const DescriptorType &desc) |
| Common device object initializer. More... | |
| DeviceObjectBase (IComputeDevice *pDevice) | |
Protected Member Functions inherited from UN::Object< IBuffer > | |
| UInt32 | Release (F &&destroyCallback) |
Additional Inherited Members | |
Public Types inherited from UN::DeviceObjectBase< IBuffer > | |
| using | DescriptorType = typename TInterface::DescriptorType |
Public Types inherited from UN::IBuffer | |
| using | DescriptorType = BufferDesc |
Protected Attributes inherited from UN::DeviceObjectBase< IBuffer > | |
| Ptr< IComputeDevice > | m_pDevice |
| DescriptorType | m_Desc |
| std::string | m_Name |
|
overridevirtual |
Bind device memory to the buffer.
Buffer doesn't allocate any device memory itself on creation or initialization. So the memory must be allocated separately and than bound to the buffer using this function.
| deviceMemory | - The memory to bind. |
Implements UN::IBuffer.
|
overridevirtual |
Bind device memory to the buffer.
Buffer doesn't allocate any device memory itself on creation or initialization. So the memory must be allocated separately and than bound to the buffer using this function.
| pDeviceMemory | - The memory to bind. |
Implements UN::IBuffer.
|
overrideprotectedvirtual |
Implements UN::BufferBase.
|
overridevirtual |
Reset the object to uninitialized state.
Implements UN::IDeviceObject.