Castor3D 0.12.0
Multiplatform 3D engine
Public Member Functions | Public Attributes | List of all members
castor3d::ObjectBufferOffset Struct Reference

#include <ObjectBufferOffset.hpp>

Collaboration diagram for castor3d::ObjectBufferOffset:
Collaboration graph
[legend]

Public Member Functions

 operator bool () const
 
ashes::BufferBase const & getIndexBuffer () const
 
ashes::BufferBase const & getVertexBuffer () const
 
ashes::BufferBase const & getBonesBuffer () const
 
bool hasIndices () const
 
bool hasVertices () const
 
bool hasBones () const
 
template<typename IndexT >
castor::ArrayView< IndexT > getIndexData () const
 
template<typename VertexT >
castor::ArrayView< VertexT > getVertexData () const
 
castor::ArrayView< VertexBoneDatagetBoneData () const
 
uint32_t getIndexSize () const
 
uint32_t getVertexSize () const
 
uint32_t getBonesSize () const
 
uint32_t getIndexCount () const
 
template<typename VertexT >
uint32_t getVertexCount () const
 
uint32_t getBonesCount () const
 
VkDeviceSize getIndexOffset () const
 
VkDeviceSize getVertexOffset () const
 
VkDeviceSize getBonesOffset () const
 
uint32_t getFirstIndex () const
 
template<typename VertexT >
uint32_t getFirstVertex () const
 
uint32_t getFirstBone () const
 
void markVertexDirty (VkAccessFlags dstAccessFlags=VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, VkPipelineStageFlags dstPipelineFlags=VK_PIPELINE_STAGE_VERTEX_INPUT_BIT) const
 
void markIndexDirty (VkAccessFlags dstAccessFlags=VK_ACCESS_INDEX_READ_BIT, VkPipelineStageFlags dstPipelineFlags=VK_PIPELINE_STAGE_VERTEX_INPUT_BIT) const
 
void markBonesDirty (VkAccessFlags dstAccessFlags=VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, VkPipelineStageFlags dstPipelineFlags=VK_PIPELINE_STAGE_VERTEX_INPUT_BIT) const
 

Public Attributes

GpuPackedBuffervtxBuffer {}
 
GpuPackedBufferidxBuffer {}
 
GpuPackedBufferbonBuffer {}
 
MemChunk vtxChunk {}
 
MemChunk idxChunk {}
 
MemChunk bonChunk {}
 

Member Function Documentation

◆ getBoneData()

castor::ArrayView< VertexBoneData > castor3d::ObjectBufferOffset::getBoneData ( ) const
inline

References bonBuffer, getBonesCount(), getBonesOffset(), castor3d::GpuBufferBase::getDatas(), and hasBones().

Here is the call graph for this function:

◆ getBonesBuffer()

ashes::BufferBase const & castor3d::ObjectBufferOffset::getBonesBuffer ( ) const
inline

References bonBuffer, and castor3d::GpuBufferBase::getBuffer().

Here is the call graph for this function:

◆ getBonesCount()

uint32_t castor3d::ObjectBufferOffset::getBonesCount ( ) const
inline

References getBonesSize().

Referenced by getBoneData().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getBonesOffset()

VkDeviceSize castor3d::ObjectBufferOffset::getBonesOffset ( ) const
inline

References bonChunk, and castor3d::MemChunk::offset.

Referenced by getBoneData(), getFirstBone(), and markBonesDirty().

Here is the caller graph for this function:

◆ getBonesSize()

uint32_t castor3d::ObjectBufferOffset::getBonesSize ( ) const
inline

References castor3d::MemChunk::askedSize, and bonChunk.

Referenced by getBonesCount(), and markBonesDirty().

Here is the caller graph for this function:

◆ getFirstBone()

uint32_t castor3d::ObjectBufferOffset::getFirstBone ( ) const
inline

References getBonesOffset().

Here is the call graph for this function:

◆ getFirstIndex()

uint32_t castor3d::ObjectBufferOffset::getFirstIndex ( ) const
inline

References getIndexOffset().

Here is the call graph for this function:

◆ getFirstVertex()

template<typename VertexT >
uint32_t castor3d::ObjectBufferOffset::getFirstVertex ( ) const
inline

References getVertexOffset().

Here is the call graph for this function:

◆ getIndexBuffer()

ashes::BufferBase const & castor3d::ObjectBufferOffset::getIndexBuffer ( ) const
inline

References castor3d::GpuBufferBase::getBuffer(), and idxBuffer.

Here is the call graph for this function:

◆ getIndexCount()

uint32_t castor3d::ObjectBufferOffset::getIndexCount ( ) const
inline

References getIndexSize().

Here is the call graph for this function:

◆ getIndexData()

template<typename IndexT >
castor::ArrayView< IndexT > castor3d::ObjectBufferOffset::getIndexData ( ) const
inline

◆ getIndexOffset()

VkDeviceSize castor3d::ObjectBufferOffset::getIndexOffset ( ) const
inline

References idxChunk, and castor3d::MemChunk::offset.

Referenced by getFirstIndex(), getIndexData(), and markIndexDirty().

Here is the caller graph for this function:

◆ getIndexSize()

uint32_t castor3d::ObjectBufferOffset::getIndexSize ( ) const
inline

References castor3d::MemChunk::askedSize, and idxChunk.

Referenced by getIndexCount(), and markIndexDirty().

Here is the caller graph for this function:

◆ getVertexBuffer()

ashes::BufferBase const & castor3d::ObjectBufferOffset::getVertexBuffer ( ) const
inline

References castor3d::GpuBufferBase::getBuffer(), and vtxBuffer.

Here is the call graph for this function:

◆ getVertexCount()

template<typename VertexT >
uint32_t castor3d::ObjectBufferOffset::getVertexCount ( ) const
inline

References getVertexSize().

Here is the call graph for this function:

◆ getVertexData()

template<typename VertexT >
castor::ArrayView< VertexT > castor3d::ObjectBufferOffset::getVertexData ( ) const
inline

References castor3d::GpuBufferBase::getDatas(), getVertexOffset(), hasVertices(), and vtxBuffer.

Here is the call graph for this function:

◆ getVertexOffset()

VkDeviceSize castor3d::ObjectBufferOffset::getVertexOffset ( ) const
inline

References castor3d::MemChunk::offset, and vtxChunk.

Referenced by getFirstVertex(), getVertexData(), and markVertexDirty().

Here is the caller graph for this function:

◆ getVertexSize()

uint32_t castor3d::ObjectBufferOffset::getVertexSize ( ) const
inline

References castor3d::MemChunk::askedSize, and vtxChunk.

Referenced by getVertexCount(), and markVertexDirty().

Here is the caller graph for this function:

◆ hasBones()

bool castor3d::ObjectBufferOffset::hasBones ( ) const
inline

References castor3d::MemChunk::askedSize, and bonChunk.

Referenced by getBoneData().

Here is the caller graph for this function:

◆ hasIndices()

bool castor3d::ObjectBufferOffset::hasIndices ( ) const
inline

References castor3d::MemChunk::askedSize, and idxChunk.

Referenced by getIndexData().

Here is the caller graph for this function:

◆ hasVertices()

bool castor3d::ObjectBufferOffset::hasVertices ( ) const
inline

References castor3d::MemChunk::askedSize, and vtxChunk.

Referenced by getVertexData().

Here is the caller graph for this function:

◆ markBonesDirty()

void castor3d::ObjectBufferOffset::markBonesDirty ( VkAccessFlags  dstAccessFlags = VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT,
VkPipelineStageFlags  dstPipelineFlags = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT 
) const
inline

References bonBuffer, getBonesOffset(), getBonesSize(), and castor3d::GpuBufferBase::markDirty().

Here is the call graph for this function:

◆ markIndexDirty()

void castor3d::ObjectBufferOffset::markIndexDirty ( VkAccessFlags  dstAccessFlags = VK_ACCESS_INDEX_READ_BIT,
VkPipelineStageFlags  dstPipelineFlags = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT 
) const
inline

References getIndexOffset(), getIndexSize(), idxBuffer, and castor3d::GpuBufferBase::markDirty().

Here is the call graph for this function:

◆ markVertexDirty()

void castor3d::ObjectBufferOffset::markVertexDirty ( VkAccessFlags  dstAccessFlags = VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT,
VkPipelineStageFlags  dstPipelineFlags = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT 
) const
inline

References getVertexOffset(), getVertexSize(), castor3d::GpuBufferBase::markDirty(), and vtxBuffer.

Here is the call graph for this function:

◆ operator bool()

castor3d::ObjectBufferOffset::operator bool ( ) const
inlineexplicit

References vtxBuffer.

Member Data Documentation

◆ bonBuffer

GpuPackedBuffer* castor3d::ObjectBufferOffset::bonBuffer {}

◆ bonChunk

MemChunk castor3d::ObjectBufferOffset::bonChunk {}

◆ idxBuffer

GpuPackedBuffer* castor3d::ObjectBufferOffset::idxBuffer {}

◆ idxChunk

MemChunk castor3d::ObjectBufferOffset::idxChunk {}

◆ vtxBuffer

GpuPackedBuffer* castor3d::ObjectBufferOffset::vtxBuffer {}

◆ vtxChunk

MemChunk castor3d::ObjectBufferOffset::vtxChunk {}

The documentation for this struct was generated from the following file: