#include <GpuBuffer.hpp>
|
C3D_API | GpuBufferBase (RenderSystem const &renderSystem, VkBufferUsageFlags usage, VkMemoryPropertyFlags memoryFlags, castor::String const &debugName, ashes::QueueShare sharingMode, VkDeviceSize allocatedSize) |
| Constructeur.
|
|
C3D_API void | upload (UploadData &uploader) |
| Met à jour tous les intervalles mémoire prêts en VRAM.
|
|
C3D_API void | upload (UploadData &uploader, VkDeviceSize offset, VkDeviceSize size, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags) |
| Met à jour un intervalle mémoire en VRAM.
|
|
C3D_API void | markDirty (VkDeviceSize offset, VkDeviceSize size, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags) |
| Marque un intervalle mémoire comme prêt à l'upload.
|
|
bool | hasBuffer () const noexcept |
|
ashes::Buffer< uint8_t > const & | getBuffer () const noexcept |
|
ashes::Buffer< uint8_t > & | getBuffer () noexcept |
|
template<typename DataT > |
DataT const & | getData (VkDeviceSize offset) const noexcept |
|
template<typename DataT > |
DataT & | getData (VkDeviceSize offset) noexcept |
|
castor::ByteArrayView const & | getDatas () const noexcept |
|
castor::ByteArrayView & | getDatas () noexcept |
|
◆ GpuBufferBase()
C3D_API castor3d::GpuBufferBase::GpuBufferBase |
( |
RenderSystem const & | renderSystem, |
|
|
VkBufferUsageFlags | usage, |
|
|
VkMemoryPropertyFlags | memoryFlags, |
|
|
castor::String const & | debugName, |
|
|
ashes::QueueShare | sharingMode, |
|
|
VkDeviceSize | allocatedSize ) |
Constructeur.
- Paramètres
-
[in] | renderSystem | Le device sur lequel le stockage est alloué. |
[in] | usage | Les cibles du tampon. |
[in] | memoryFlags | Les propriétés mémoire du tampon. |
[in] | debugName | Le nom debug. |
[in] | sharingMode | Le mode de partage. |
[in] | allocatedSize | La taille du buffer. |
◆ getBuffer() [1/2]
ashes::Buffer< uint8_t > const & castor3d::GpuBufferBase::getBuffer |
( |
| ) |
const |
|
inlinenoexcept |
◆ getBuffer() [2/2]
ashes::Buffer< uint8_t > & castor3d::GpuBufferBase::getBuffer |
( |
| ) |
|
|
inlinenoexcept |
- Renvoie
- Le tampon interne.
◆ getData() [1/2]
template<typename DataT >
DataT const & castor3d::GpuBufferBase::getData |
( |
VkDeviceSize | offset | ) |
const |
|
inlinenoexcept |
- Renvoie
- La n-ème instance des données.
- Paramètres
-
[in] | offset | L'offset de la zone mémoire. |
◆ getData() [2/2]
template<typename DataT >
DataT & castor3d::GpuBufferBase::getData |
( |
VkDeviceSize | offset | ) |
|
|
inlinenoexcept |
- Renvoie
- La n-ème instance des données.
- Paramètres
-
[in] | offset | L'offset de la zone mémoire. |
◆ getDatas() [1/2]
castor::ByteArrayView const & castor3d::GpuBufferBase::getDatas |
( |
| ) |
const |
|
inlinenoexcept |
◆ getDatas() [2/2]
castor::ByteArrayView & castor3d::GpuBufferBase::getDatas |
( |
| ) |
|
|
inlinenoexcept |
◆ hasBuffer()
bool castor3d::GpuBufferBase::hasBuffer |
( |
| ) |
const |
|
inlinenoexcept |
◆ markDirty()
C3D_API void castor3d::GpuBufferBase::markDirty |
( |
VkDeviceSize | offset, |
|
|
VkDeviceSize | size, |
|
|
VkAccessFlags | dstAccessFlags, |
|
|
VkPipelineStageFlags | dstPipelineFlags ) |
Marque un intervalle mémoire comme prêt à l'upload.
- Paramètres
-
[in] | offset,size | L'intervalle mémoire. |
[in] | dstAccessFlags | Les flags d'accès voulus après l'upload. |
[in] | dstPipelineFlags | Les flags d'étape de pipeline voulus après l'upload. |
Référencé par castor3d::GpuBufferOffsetT< DataT >::markDirty().
◆ upload() [1/2]
Met à jour tous les intervalles mémoire prêts en VRAM.
- Paramètres
-
[in,out] | uploader | Reçoit les requêtes d'upload. |
◆ upload() [2/2]
C3D_API void castor3d::GpuBufferBase::upload |
( |
UploadData & | uploader, |
|
|
VkDeviceSize | offset, |
|
|
VkDeviceSize | size, |
|
|
VkAccessFlags | dstAccessFlags, |
|
|
VkPipelineStageFlags | dstPipelineFlags ) |
Met à jour un intervalle mémoire en VRAM.
- Paramètres
-
[in,out] | uploader | Reçoit les requêtes d'upload. |
[in] | offset,size | L'intervalle mémoire. |
[in] | dstAccessFlags | Les flags d'accès voulus après l'upload. |
[in] | dstPipelineFlags | Les flags d'étape de pipeline voulus après l'upload. |
◆ GpuBufferPool
La documentation de cette classe a été générée à partir du fichier suivant :