mirror of
https://codeberg.org/comaps/comaps
synced 2025-12-25 07:13:53 +00:00
Organic Maps sources as of 02.04.2025 (fad26bbf22ac3da75e01e62aa01e5c8e11861005)
To expand with full Organic Maps and Maps.ME commits history run: git remote add om-historic [om-historic.git repo url] git fetch --tags om-historic git replace squashed-history historic-commits
This commit is contained in:
38
drape/index_buffer_mutator.cpp
Normal file
38
drape/index_buffer_mutator.cpp
Normal file
@@ -0,0 +1,38 @@
|
||||
#include "drape/index_buffer_mutator.hpp"
|
||||
#include "drape/vertex_array_buffer.hpp"
|
||||
|
||||
#include <algorithm>
|
||||
#include <cstring>
|
||||
|
||||
namespace dp
|
||||
{
|
||||
IndexBufferMutator::IndexBufferMutator(uint32_t baseSize)
|
||||
{
|
||||
m_buffer.Resize(baseSize);
|
||||
}
|
||||
|
||||
void IndexBufferMutator::AppendIndexes(void const * indexes, uint32_t count)
|
||||
{
|
||||
uint32_t dstActiveSize = m_activeSize + count;
|
||||
if (dstActiveSize > m_buffer.Size())
|
||||
m_buffer.Resize(std::max(m_buffer.Size() * 2, dstActiveSize));
|
||||
|
||||
memcpy(m_buffer.GetRaw(m_activeSize), indexes, count * IndexStorage::SizeOfIndex());
|
||||
m_activeSize = dstActiveSize;
|
||||
}
|
||||
|
||||
void const * IndexBufferMutator::GetIndexes() const
|
||||
{
|
||||
return m_buffer.GetRawConst();
|
||||
}
|
||||
|
||||
uint32_t IndexBufferMutator::GetIndexCount() const
|
||||
{
|
||||
return m_activeSize;
|
||||
}
|
||||
|
||||
uint32_t IndexBufferMutator::GetCapacity() const
|
||||
{
|
||||
return m_buffer.Size();
|
||||
}
|
||||
} // namespace dp
|
||||
Reference in New Issue
Block a user