diff options
Diffstat (limited to 'drape/data_buffer.cpp')
-rw-r--r-- | drape/data_buffer.cpp | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/drape/data_buffer.cpp b/drape/data_buffer.cpp index fccc4fa7f9..672741fa9d 100644 --- a/drape/data_buffer.cpp +++ b/drape/data_buffer.cpp @@ -3,7 +3,6 @@ namespace dp { - DataBuffer::DataBuffer(uint8_t elementSize, uint32_t capacity) : m_impl(make_unique_dp<CpuBufferImpl>(elementSize, capacity)) { @@ -17,30 +16,31 @@ ref_ptr<DataBufferBase> DataBuffer::GetBuffer() const void DataBuffer::MoveToGPU(GPUBuffer::Target target) { - // if currentSize is 0 buffer hasn't been filled on preparation stage, let it be filled further + // If currentSize is 0 buffer hasn't been filled on preparation stage, let it be filled further. uint32_t const currentSize = m_impl->GetCurrentSize(); if (currentSize != 0) - m_impl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(),m_impl->GetElementSize(), currentSize); + { + m_impl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(), m_impl->GetElementSize(), + currentSize); + } else - m_impl = make_unique_dp<GpuBufferImpl>(target, nullptr, m_impl->GetElementSize(), m_impl->GetAvailableSize()); + { + m_impl = make_unique_dp<GpuBufferImpl>(target, nullptr, m_impl->GetElementSize(), + m_impl->GetAvailableSize()); + } } - -DataBufferMapper::DataBufferMapper(ref_ptr<DataBuffer> buffer) +DataBufferMapper::DataBufferMapper(ref_ptr<DataBuffer> buffer, uint32_t elementOffset, + uint32_t elementCount) : m_buffer(buffer) { m_buffer->GetBuffer()->Bind(); - m_ptr = m_buffer->GetBuffer()->Map(); -} - -DataBufferMapper::~DataBufferMapper() -{ - m_buffer->GetBuffer()->Unmap(); + m_ptr = m_buffer->GetBuffer()->Map(elementOffset, elementCount); } +DataBufferMapper::~DataBufferMapper() { m_buffer->GetBuffer()->Unmap(); } void DataBufferMapper::UpdateData(void const * data, uint32_t elementOffset, uint32_t elementCount) { m_buffer->GetBuffer()->UpdateData(m_ptr, data, elementOffset, elementCount); } - -} +} // namespace dp |