|
Kompute
|
#include <OpMemoryBarrier.hpp>


Public Member Functions | |
| OpMemoryBarrier (const std::vector< std::shared_ptr< Memory > > &memObjects, const vk::AccessFlagBits &srcAccessMask, const vk::AccessFlagBits &dstAccessMask, const vk::PipelineStageFlagBits &srcStageMask, const vk::PipelineStageFlagBits &dstStageMask, bool barrierOnPrimary=true) noexcept | |
| OpMemoryBarrier (const OpMemoryBarrier &)=delete | |
| Make OpMemoryBarrier non-copyable. | |
| OpMemoryBarrier (const OpMemoryBarrier &&)=delete | |
| OpMemoryBarrier & | operator= (const OpMemoryBarrier &)=delete |
| OpMemoryBarrier & | operator= (const OpMemoryBarrier &&)=delete |
| virtual | ~OpMemoryBarrier () noexcept override |
| virtual 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 provides a general abstraction that simplifies the use of algorithm and parameter components which can be used with shaders. It exposes the pipeline barrier functionality specifically for memory barriers that can be configured through the respective source and destination masks
|
noexcept |
Constructor that stores mem objects as well as memory barrier parameters to be used to create a pipeline barrier on the respective primary or staging tensor.
| memObjects | The mem objects to apply the memory barriers on |
| srcAccessMask | The kp::AccessFlagBits for the source access mask |
| dstAccessMask | The kp::AccessFlagBits for the destination access mask |
| srcStageMask | The kp::PipelineStageFlagBits for the source stage mask |
| dstStageMask | The kp::PipelineStageFlagBits for the destination stage mask |
| barrierOnPrimary | Boolean to select primary or secondary buffers on mem objects |
|
overridevirtualnoexcept |
Default destructor, which is in charge of destroying the reference to the tensors and all the relevant access / stage masks created
|
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 |
This records the memory barrier with the access and stage masks provided across all relevant tensors.
| commandBuffer | The command buffer to record the command into. |
Implements kp::OpBase.