|
Kompute
|
#include <OpSyncDevice.hpp>


Public Member Functions | |
| OpSyncDevice (const std::vector< std::shared_ptr< Memory > > &memObjects) | |
| OpSyncDevice (const OpSyncDevice &)=delete | |
| Make OpSyncDevice non-copyable. | |
| OpSyncDevice (const OpSyncDevice &&)=delete | |
| OpSyncDevice & | operator= (const OpSyncDevice &)=delete |
| OpSyncDevice & | operator= (const OpSyncDevice &&)=delete |
| ~OpSyncDevice () noexcept override | |
| void | record (const vk::CommandBuffer &commandBuffer) override |
| virtual void | preEval (const vk::CommandBuffer &commandBuffer) override |
| virtual void | postEval (const vk::CommandBuffer &commandBuffer) override |
Public Member Functions inherited from kp::OpBase | |
| OpBase ()=default | |
| Construct a new OpBase object. | |
| OpBase (const OpBase &)=delete | |
| Make OpBase non-copyable. | |
| OpBase (const OpBase &&)=delete | |
| OpBase & | operator= (const OpBase &)=delete |
| OpBase & | operator= (const OpBase &&)=delete |
| virtual | ~OpBase () noexcept |
Operation that syncs mem object's device memory by mapping local data into the device memory. For MemoryTypes::eDevice it will use a record operation for the memory to be syncd into GPU memory which means that the operation will be done in sync with GPU commands. For MemoryTypes::eHost it will only map the data into host memory which will happen during preEval before the recorded commands are dispatched.
| kp::OpSyncDevice::OpSyncDevice | ( | const std::vector< std::shared_ptr< Memory > > & | memObjects | ) |
Default constructor with parameters that provides the core vulkan resources and the memory objects that will be used in the operation. The memory objects provided cannot be of type MemoryTypes::eStorage.
| memObjects | Memory objects that will be used to create in operation. |
|
overridenoexcept |
Default destructor. This class does not manage memory so it won't be expecting the parent to perform a release.
|
overridevirtual |
Does not perform any postEval commands.
| commandBuffer | The command buffer to record the command into. |
Implements kp::OpBase.
|
overridevirtual |
Does not perform any preEval commands.
| commandBuffer | The command buffer to record the command into. |
Implements kp::OpBase.
|
overridevirtual |
For device memory objects, it records the copy command for the memory object to copy the data from its staging to device memory.
| commandBuffer | The command buffer to record the command into. |
Implements kp::OpBase.