SPARK  0.1.0
A general purpose game engine written in C++.
Loading...
Searching...
No Matches
spark::render::IMappable Class Referenceabstract

Interface allowing data to be mapped into the object. More...

#include <Mappable.h>

Inheritance diagram for spark::render::IMappable:
spark::render::IBuffer spark::render::IIndexBuffer spark::render::IVertexBuffer spark::render::vk::IVulkanBuffer spark::render::vk::IVulkanIndexBuffer spark::render::vk::IVulkanVertexBuffer spark::render::vk::IVulkanIndexBuffer spark::render::vk::IVulkanVertexBuffer spark::render::vk::VulkanBuffer spark::render::vk::VulkanIndexBuffer spark::render::vk::VulkanVertexBuffer spark::render::vk::VulkanIndexBuffer spark::render::vk::VulkanVertexBuffer spark::render::vk::VulkanIndexBuffer spark::render::vk::VulkanVertexBuffer

Public Member Functions

virtual void map (const void *data, std::size_t size, unsigned int element)=0
 Maps the memory at data into the internal memory of the object.
 
virtual void map (std::span< const void * > data, std::size_t element_size, unsigned int first_element)=0
 Maps the memory blocks within data into the internal memory of the object.
 
virtual void map (void *data, size_t size, unsigned int element=0, bool write=true)=0
 Maps the memory at data into the internal memory of the object.
 
virtual void map (std::span< void * > data, size_t element_size, unsigned int first_element=0, bool write=true)=0
 Maps the memory blocks within data into the internal memory of the object.
 

Detailed Description

Interface allowing data to be mapped into the object.

Member Function Documentation

◆ map() [1/4]

virtual void spark::render::IMappable::map ( const void * data,
std::size_t size,
unsigned int element )
pure virtual

Maps the memory at data into the internal memory of the object.

Parameters
dataAddress of the beginning of the data to map (in bytes).
sizeSize of the data to map.
elementThe array element to map the data to.

◆ map() [2/4]

virtual void spark::render::IMappable::map ( std::span< const void * > data,
std::size_t element_size,
unsigned int first_element )
pure virtual

Maps the memory blocks within data into the internal memory of the object.

Parameters
dataA std::span of memory blocks to map.
element_sizeThe size of each element in the span (in bytes).
first_elementThe first element to map the data to.

◆ map() [3/4]

virtual void spark::render::IMappable::map ( std::span< void * > data,
size_t element_size,
unsigned int first_element = 0,
bool write = true )
pure virtual

Maps the memory blocks within data into the internal memory of the object.

Parameters
dataA std::span of memory blocks to map.
element_sizeThe size of each element in the span (in bytes).
first_elementThe first element to map the data to.
writetrue if the data will be written to the object. false if the data will be read from the object.

◆ map() [4/4]

virtual void spark::render::IMappable::map ( void * data,
size_t size,
unsigned int element = 0,
bool write = true )
pure virtual

Maps the memory at data into the internal memory of the object.

Parameters
dataAddress of the beginning of the data to map.
sizeSize of the data to map (in bytes).
elementThe array element to map the data to.
writeIf true, the data will be written to the object. If false, the data will be read from the object.