Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'drape/data_buffer.hpp')
-rw-r--r--drape/data_buffer.hpp17
1 files changed, 6 insertions, 11 deletions
diff --git a/drape/data_buffer.hpp b/drape/data_buffer.hpp
index 0c82228449..15871a0326 100644
--- a/drape/data_buffer.hpp
+++ b/drape/data_buffer.hpp
@@ -1,16 +1,14 @@
#pragma once
-#include "drape/pointers.hpp"
#include "drape/gpu_buffer.hpp"
+#include "drape/pointers.hpp"
namespace dp
{
-
class DataBufferBase
{
public:
virtual ~DataBufferBase() {}
-
virtual uint32_t GetCapacity() const = 0;
virtual uint32_t GetCurrentSize() const = 0;
virtual uint32_t GetAvailableSize() const = 0;
@@ -19,14 +17,14 @@ public:
virtual void const * Data() const = 0;
virtual void UploadData(void const * data, uint32_t elementCount) = 0;
- virtual void UpdateData(void * destPtr, void const * srcPtr, uint32_t elementOffset, uint32_t elementCount) = 0;
+ virtual void UpdateData(void * destPtr, void const * srcPtr, uint32_t elementOffset,
+ uint32_t elementCount) = 0;
virtual void Bind() = 0;
- virtual void * Map() = 0;
+ virtual void * Map(uint32_t elementOffset, uint32_t elementCount) = 0;
virtual void Unmap() = 0;
};
-
class DataBuffer
{
public:
@@ -39,11 +37,10 @@ private:
drape_ptr<DataBufferBase> m_impl;
};
-
class DataBufferMapper
{
public:
- DataBufferMapper(ref_ptr<DataBuffer> buffer);
+ DataBufferMapper(ref_ptr<DataBuffer> buffer, uint32_t elementOffset, uint32_t elementCount);
~DataBufferMapper();
void UpdateData(void const * data, uint32_t elementOffset, uint32_t elementCount);
@@ -52,6 +49,4 @@ private:
ref_ptr<DataBuffer> m_buffer;
void * m_ptr;
};
-
-} // namespace dp
-
+} // namespace dp