#include <StagedBuffer.h>
|
| template<class... DestinationClassArgs> |
| | StagedBuffer (DestinationClassArgs... args) |
| |
|
| ~StagedBuffer () |
| | Destructor.
|
| |
| void | transferBuffer (const vk::CommandBuffer &command_buffer=nullptr) |
| |
| void | updateBuffer (const void *_data, size_t _data_size) override |
| |
template<class DestinationClass>
class VulkanEngine::StagedBuffer< DestinationClass >
Represents a temporary buffer used to transfer data to another StagedBufferDestination buffer. This class can be templated on any class inheriting from StagedBufferDestination in order to provide staging functionality for that class. E.g the type StagedBuffer< Image > is an Image which has staging functionality.
- Template Parameters
-
| DestinationClass | The class which will be the receiver of the data in this buffer. |
| DestinationClassArgs | Parameter pack specifying the signature of the constructor of DestinationClass to call from StagedBuffer's constructor. |
◆ StagedBuffer()
template<class DestinationClass >
template<class... DestinationClassArgs>
Contructor. Creates the staging buffer.
◆ transferBuffer()
template<class DestinationClass >
When called, data will be transferred from this staging buffer to the destination buffer.
- Parameters
-
| command_buffer | The command buffer to record the transfer command in. If not specified an internal command buffer will be created and submitted to the appropriate queue. |
◆ updateBuffer()
template<class DestinationClass >
Copy the data to the buffer. Overridden to update the source buffer.
- Parameters
-
| _data | Pointer to the data. |
| _data_size | The size of the data in bytes. |
◆ source_buffer
template<class DestinationClass >
The source buffer. Data will be transferred from this buffer to the destination buffer when calling transferBuffer().
The documentation for this class was generated from the following files: