31 lines
874 B
C++
31 lines
874 B
C++
#ifndef HYDRAUPDATEPARTIALGPUBUFFERTASK
|
|
#define HYDRAUPDATEPARTIALGPUBUFFERTASK
|
|
|
|
#include "../HydraTask.h"
|
|
#include "../../engine/HydraEngine.h"
|
|
#include "../../buffer/HydraBufferManager.h"
|
|
|
|
class HydraUpdatePartialGPUBufferTask : public HydraTask
|
|
{
|
|
private:
|
|
HydraID m_buffer_id = INVALID_HYDRA_ID;
|
|
void *m_data = nullptr;
|
|
uint32_t m_start = 0;
|
|
uint32_t m_size = 0;
|
|
protected:
|
|
public:
|
|
virtual void Process() override
|
|
{
|
|
GetEngine()->BufferManager()->UpdatePartialBuffer(m_buffer_id, m_start, m_size, m_data);
|
|
}
|
|
void Intialise(HydraID buffer_id, uint32_t start, uint32_t size, void* data)
|
|
{
|
|
m_buffer_id = buffer_id;
|
|
m_data = data;
|
|
m_start = start;
|
|
m_size = size;
|
|
}
|
|
};
|
|
|
|
#endif /* HYDRAUPDATEPARTIALGPUBUFFERTASK */
|