Castor3D 0.16.0
Multiplatform 3D engine
Public Member Functions | List of all members
castor3d::PassMasksComponent::ComponentData Struct Reference

#include <PassMasksComponent.hpp>

Inheritance diagram for castor3d::PassMasksComponent::ComponentData:
Inheritance graph
[legend]
Collaboration diagram for castor3d::PassMasksComponent::ComponentData:
Collaboration graph
[legend]

Public Member Functions

void gather (PipelineFlags const &flags, Pass const &pass, ObjectBufferOffset const &bufferOffsets, ashes::BufferCRefArray &buffers, castor::Vector< uint64_t > &offsets, ashes::PipelineVertexInputStateCreateInfoCRefArray &layouts, uint32_t &currentBinding, uint32_t &currentLocation) override
 Gathers buffers that need to go in a vertex layout.
 
void copy (SubmeshComponentDataRPtr data) const override
 Copies given component's data into this one.
 
C3D_API void addDatas (PassMasks const *const begin, PassMasks const *const end)
 Adds bone datas.
 
C3D_API void addDatas (castor::Vector< PassMasks > const &data)
 Adds masks datas.
 
template<size_t Count>
void addDatas (castor::Array< PassMasks, Count > const &data)
 Adds masks datas.
 
bool hasData () const
 
void setData (castor::Vector< PassMasks > data)
 
castor::Vector< PassMasks > & getData ()
 
castor::Vector< PassMasks > const & getData () const
 
C3D_API SubmeshComponentData (Submesh &submesh)
 
- Public Member Functions inherited from castor3d::SubmeshComponentData
C3D_API SubmeshComponentData (Submesh &submesh)
 
C3D_API bool initialise (RenderDevice const &device)
 Initialises the submesh.
 
C3D_API void cleanup (RenderDevice const &device)
 Cleans the submesh.
 
C3D_API void upload (UploadData &uploader)
 Uploads data on VRAM.
 
virtual C3D_API VkBufferUsageFlags getUsageFlags () const noexcept
 
void needsUpdate ()
 
- Public Member Functions inherited from castor3d::SubmeshSubComponent
 SubmeshSubComponent ()=default
 
 SubmeshSubComponent (SubmeshSubComponent const &)=delete
 
SubmeshSubComponentoperator= (SubmeshSubComponent const &)=delete
 
C3D_API SubmeshSubComponent (SubmeshSubComponent &&) noexcept=default
 
C3D_API SubmeshSubComponentoperator= (SubmeshSubComponent &&) noexcept=default
 
virtual C3D_API ~SubmeshSubComponent () noexcept=default
 

Additional Inherited Members

- Protected Attributes inherited from castor3d::SubmeshComponentData
Submeshm_submesh
 

Member Function Documentation

◆ addDatas() [1/3]

template<size_t Count>
void castor3d::PassMasksComponent::ComponentData::addDatas ( castor::Array< PassMasks, Count > const & data)
inline

Adds masks datas.

Parameters
[in]dataThe masks datas.

References addDatas().

Here is the call graph for this function:

◆ addDatas() [2/3]

C3D_API void castor3d::PassMasksComponent::ComponentData::addDatas ( castor::Vector< PassMasks > const & data)

Adds masks datas.

Parameters
[in]dataThe masks.

◆ addDatas() [3/3]

C3D_API void castor3d::PassMasksComponent::ComponentData::addDatas ( PassMasks const *const begin,
PassMasks const *const end )

Adds bone datas.

Parameters
[in]beginThe bones data begin.
[in]endThe bones data end.

Referenced by addDatas().

Here is the caller graph for this function:

◆ copy()

void castor3d::PassMasksComponent::ComponentData::copy ( SubmeshComponentDataRPtr data) const
overridevirtual

Copies given component's data into this one.

Parameters
[in,out]dataThe source component's data.

Implements castor3d::SubmeshComponentData.

◆ gather()

void castor3d::PassMasksComponent::ComponentData::gather ( PipelineFlags const & flags,
Pass const & pass,
ObjectBufferOffset const & bufferOffsets,
ashes::BufferCRefArray & buffers,
castor::Vector< uint64_t > & offsets,
ashes::PipelineVertexInputStateCreateInfoCRefArray & layouts,
uint32_t & currentBinding,
uint32_t & currentLocation )
overridevirtual

Gathers buffers that need to go in a vertex layout.

Parameters
[in]flagsThe pipeline flags.
[in]passThe material pass.
[in]bufferOffsetsHolds the buffers.
[in,out]buffersReceives the buffers.
[in,out]offsetsReceives the buffers offsets.
[in,out]layoutsReceives the vertex layouts.
[in,out]currentBindingThe current buffer binding.
[in,out]currentLocationThe current attribute location.

Implements castor3d::SubmeshComponentData.

◆ getData() [1/2]

castor::Vector< PassMasks > & castor3d::PassMasksComponent::ComponentData::getData ( )
inline

◆ getData() [2/2]

castor::Vector< PassMasks > const & castor3d::PassMasksComponent::ComponentData::getData ( ) const
inline

◆ hasData()

bool castor3d::PassMasksComponent::ComponentData::hasData ( ) const
inline

◆ setData()

void castor3d::PassMasksComponent::ComponentData::setData ( castor::Vector< PassMasks > data)
inline

◆ SubmeshComponentData()

C3D_API castor3d::SubmeshComponentData::SubmeshComponentData ( Submesh & submesh)

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