Castor3D 0.16.0
Multiplatform 3D engine
Classes | Fonctions membres publiques | Fonctions membres protégées | Attributs protégés | Liste de tous les membres
Référence de la classe castor3d::UploadDataabstract

#include <UploadData.hpp>

Graphe d'héritage de castor3d::UploadData:
Inheritance graph
[légende]
Graphe de collaboration de castor3d::UploadData:
Collaboration graph
[légende]

Classes

struct  BufferDataRange
 
struct  ImageDataRange
 
struct  SemaphoreUsed
 

Fonctions membres publiques

 UploadData (UploadData const &)=delete
 
 UploadData (UploadData &&) noexcept=delete
 
UploadDataoperator= (UploadData const &)=delete
 
UploadDataoperator= (UploadData &&) noexcept=delete
 
virtual C3D_API ~UploadData () noexcept=default
 
C3D_API void begin ()
 
C3D_API void pushUpload (void const *srcData, VkDeviceSize srcSize, ashes::BufferBase const &dstBuffer, VkDeviceSize dstOffset, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags)
 
C3D_API void pushUpload (void const *srcData, VkDeviceSize srcSize, ashes::Image const &dstImage, castor::ImageLayout dstLayout, VkImageSubresourceRange dstRange, VkImageLayout dstImageLayout, VkPipelineStageFlags dstPipelineFlags)
 
C3D_API void process ()
 
C3D_API SemaphoreUsed end (ashes::Queue const &queue, ashes::Fence const *fence=nullptr, castor::Milliseconds timeout=castor::Milliseconds{ ashes::MaxTimeout })
 
void pushUpload (castor::ByteArray const &srcData, ashes::BufferBase const &dstBuffer, VkDeviceSize dstOffset, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags)
 
void pushUpload (castor::ByteArray const &srcData, ashes::Image const &dstImage, castor::ImageLayout dstLayout, VkImageSubresourceRange dstRange, VkImageLayout dstImageLayout, VkPipelineStageFlags dstPipelineFlags)
 
void pushUpload (castor::ByteArrayView const &srcData, ashes::BufferBase const &dstBuffer, VkDeviceSize dstOffset, VkAccessFlags dstAccessFlags, VkPipelineStageFlags dstPipelineFlags)
 
void pushUpload (castor::ByteArrayView const &srcData, ashes::Image const &dstImage, castor::ImageLayout dstLayout, VkImageSubresourceRange dstRange, VkImageLayout dstImageLayout, VkPipelineStageFlags dstPipelineFlags)
 
ashes::CommandBuffer const & getCommandBuffer () const noexcept
 
RenderDevice const & getDevice () const noexcept
 
castor::String const & getName () const noexcept
 

Fonctions membres protégées

C3D_API UploadData (RenderDevice const &device, castor::String debugName, ashes::CommandBuffer const *commandBuffer)
 
C3D_API bool doCopyData (void const *srcData, VkDeviceSize size, ashes::BufferBase const &dstBuffer, VkDeviceSize dstOffset) const
 
C3D_API void doUploadBuffer (BufferDataRange const &data, ashes::BufferBase const *srcBuffer, VkDeviceSize srcOffset) const
 
C3D_API void doUploadImage (ImageDataRange &data, ashes::BufferBase const &srcBuffer, VkDeviceSize srcOffset) const
 

Attributs protégés

RenderDevice const & m_device
 
castor::String m_debugName
 
ashes::CommandBuffer const * m_commandBuffer
 
castor::Vector< BufferDataRangem_pendingBuffers
 
castor::Vector< ImageDataRangem_pendingImages
 

Documentation des constructeurs et destructeur

◆ UploadData() [1/3]

castor3d::UploadData::UploadData ( UploadData const & )
delete

◆ UploadData() [2/3]

castor3d::UploadData::UploadData ( UploadData && )
deletenoexcept

◆ ~UploadData()

virtual C3D_API castor3d::UploadData::~UploadData ( )
virtualdefaultnoexcept

◆ UploadData() [3/3]

C3D_API castor3d::UploadData::UploadData ( RenderDevice const & device,
castor::String debugName,
ashes::CommandBuffer const * commandBuffer )
protected

Documentation des fonctions membres

◆ begin()

C3D_API void castor3d::UploadData::begin ( )

◆ doCopyData()

C3D_API bool castor3d::UploadData::doCopyData ( void const * srcData,
VkDeviceSize size,
ashes::BufferBase const & dstBuffer,
VkDeviceSize dstOffset ) const
protected

◆ doUploadBuffer()

C3D_API void castor3d::UploadData::doUploadBuffer ( BufferDataRange const & data,
ashes::BufferBase const * srcBuffer,
VkDeviceSize srcOffset ) const
protected

◆ doUploadImage()

C3D_API void castor3d::UploadData::doUploadImage ( ImageDataRange & data,
ashes::BufferBase const & srcBuffer,
VkDeviceSize srcOffset ) const
protected

◆ end()

C3D_API SemaphoreUsed castor3d::UploadData::end ( ashes::Queue const & queue,
ashes::Fence const * fence = nullptr,
castor::Milliseconds timeout = castor::Milliseconds{ ashes::MaxTimeout } )

Référencé par castor3d::InstantUploadDataT< UploaderT >::~InstantUploadDataT().

Voici le graphe des appelants de cette fonction :

◆ getCommandBuffer()

ashes::CommandBuffer const & castor3d::UploadData::getCommandBuffer ( ) const
inlinenoexcept

Références m_commandBuffer.

◆ getDevice()

RenderDevice const & castor3d::UploadData::getDevice ( ) const
inlinenoexcept

Références m_device.

Référencé par castor3d::InstantUploadDataT< UploaderT >::~InstantUploadDataT().

Voici le graphe des appelants de cette fonction :

◆ getName()

castor::String const & castor3d::UploadData::getName ( ) const
inlinenoexcept

Références m_debugName.

Référencé par castor3d::InstantUploadDataT< UploaderT >::~InstantUploadDataT().

Voici le graphe des appelants de cette fonction :

◆ operator=() [1/2]

UploadData & castor3d::UploadData::operator= ( UploadData && )
deletenoexcept

◆ operator=() [2/2]

UploadData & castor3d::UploadData::operator= ( UploadData const & )
delete

◆ process()

C3D_API void castor3d::UploadData::process ( )

Référencé par castor3d::InstantUploadDataT< UploaderT >::~InstantUploadDataT().

Voici le graphe des appelants de cette fonction :

◆ pushUpload() [1/6]

void castor3d::UploadData::pushUpload ( castor::ByteArray const & srcData,
ashes::BufferBase const & dstBuffer,
VkDeviceSize dstOffset,
VkAccessFlags dstAccessFlags,
VkPipelineStageFlags dstPipelineFlags )
inline

Références pushUpload().

Voici le graphe d'appel pour cette fonction :

◆ pushUpload() [2/6]

void castor3d::UploadData::pushUpload ( castor::ByteArray const & srcData,
ashes::Image const & dstImage,
castor::ImageLayout dstLayout,
VkImageSubresourceRange dstRange,
VkImageLayout dstImageLayout,
VkPipelineStageFlags dstPipelineFlags )
inline

Références pushUpload().

Voici le graphe d'appel pour cette fonction :

◆ pushUpload() [3/6]

void castor3d::UploadData::pushUpload ( castor::ByteArrayView const & srcData,
ashes::BufferBase const & dstBuffer,
VkDeviceSize dstOffset,
VkAccessFlags dstAccessFlags,
VkPipelineStageFlags dstPipelineFlags )
inline

Références pushUpload().

Voici le graphe d'appel pour cette fonction :

◆ pushUpload() [4/6]

void castor3d::UploadData::pushUpload ( castor::ByteArrayView const & srcData,
ashes::Image const & dstImage,
castor::ImageLayout dstLayout,
VkImageSubresourceRange dstRange,
VkImageLayout dstImageLayout,
VkPipelineStageFlags dstPipelineFlags )
inline

Références pushUpload().

Voici le graphe d'appel pour cette fonction :

◆ pushUpload() [5/6]

C3D_API void castor3d::UploadData::pushUpload ( void const * srcData,
VkDeviceSize srcSize,
ashes::BufferBase const & dstBuffer,
VkDeviceSize dstOffset,
VkAccessFlags dstAccessFlags,
VkPipelineStageFlags dstPipelineFlags )

Référencé par pushUpload(), pushUpload(), pushUpload(), et pushUpload().

Voici le graphe des appelants de cette fonction :

◆ pushUpload() [6/6]

C3D_API void castor3d::UploadData::pushUpload ( void const * srcData,
VkDeviceSize srcSize,
ashes::Image const & dstImage,
castor::ImageLayout dstLayout,
VkImageSubresourceRange dstRange,
VkImageLayout dstImageLayout,
VkPipelineStageFlags dstPipelineFlags )

Documentation des données membres

◆ m_commandBuffer

ashes::CommandBuffer const* castor3d::UploadData::m_commandBuffer
protected

Référencé par getCommandBuffer().

◆ m_debugName

castor::String castor3d::UploadData::m_debugName
protected

Référencé par getName().

◆ m_device

RenderDevice const& castor3d::UploadData::m_device
protected

Référencé par getDevice().

◆ m_pendingBuffers

castor::Vector< BufferDataRange > castor3d::UploadData::m_pendingBuffers
protected

◆ m_pendingImages

castor::Vector< ImageDataRange > castor3d::UploadData::m_pendingImages
protected

La documentation de cette classe a été générée à partir du fichier suivant :