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:
-rw-r--r--android/jni/com/mapswithme/maps/Framework.cpp2
-rw-r--r--drape/attribute_provider.cpp4
-rw-r--r--drape/batcher.cpp26
-rw-r--r--drape/batcher.hpp8
-rw-r--r--drape/data_buffer.cpp22
-rw-r--r--drape/data_buffer.hpp1
-rw-r--r--drape/drape_tests/dummy_texture.hpp2
-rw-r--r--drape/drape_tests/font_texture_tests.cpp6
-rw-r--r--drape/drape_tests/stipple_pen_tests.cpp4
-rw-r--r--drape/drape_tests/texture_of_colors_tests.cpp14
-rw-r--r--drape/dynamic_texture.hpp8
-rw-r--r--drape/font_texture.cpp8
-rw-r--r--drape/font_texture.hpp2
-rw-r--r--drape/glstate.cpp4
-rw-r--r--drape/gpu_program_manager.cpp8
-rw-r--r--drape/pointers.cpp13
-rw-r--r--drape/pointers.hpp66
-rw-r--r--drape/render_bucket.cpp8
-rw-r--r--drape/render_bucket.hpp2
-rw-r--r--drape/stipple_pen_resource.cpp6
-rw-r--r--drape/symbols_texture.cpp6
-rw-r--r--drape/symbols_texture.hpp2
-rw-r--r--drape/texture.cpp6
-rw-r--r--drape/texture_manager.cpp38
-rw-r--r--drape/texture_manager.hpp6
-rw-r--r--drape/texture_of_colors.cpp4
-rw-r--r--drape/vertex_array_buffer.cpp14
-rw-r--r--drape_frontend/area_shape.cpp2
-rw-r--r--drape_frontend/backend_renderer.cpp18
-rw-r--r--drape_frontend/circle_shape.cpp2
-rw-r--r--drape_frontend/drape_engine.cpp14
-rw-r--r--drape_frontend/engine_context.cpp1
-rw-r--r--drape_frontend/engine_context.hpp2
-rwxr-xr-xdrape_frontend/frontend_renderer.cpp42
-rwxr-xr-xdrape_frontend/frontend_renderer.hpp8
-rw-r--r--drape_frontend/line_shape.cpp2
-rw-r--r--drape_frontend/map_shape.hpp2
-rw-r--r--drape_frontend/message_acceptor.cpp4
-rw-r--r--drape_frontend/message_queue.cpp2
-rw-r--r--drape_frontend/message_subclasses.hpp6
-rw-r--r--drape_frontend/my_position.cpp2
-rw-r--r--drape_frontend/path_symbol_shape.cpp2
-rw-r--r--drape_frontend/path_text_shape.cpp15
-rw-r--r--drape_frontend/poi_symbol_shape.cpp2
-rwxr-xr-xdrape_frontend/render_group.cpp8
-rwxr-xr-xdrape_frontend/render_group.hpp2
-rw-r--r--drape_frontend/text_shape.cpp4
-rw-r--r--drape_frontend/tile_info.cpp4
-rw-r--r--drape_frontend/tile_info.hpp2
-rw-r--r--drape_frontend/user_mark_shapes.cpp2
-rw-r--r--drape_gui/compass.cpp4
-rw-r--r--drape_gui/copyright_label.cpp2
-rw-r--r--drape_gui/country_status.cpp10
-rw-r--r--drape_gui/gui_text.cpp12
-rw-r--r--drape_gui/gui_text.hpp1
-rw-r--r--drape_gui/layer_render.cpp8
-rw-r--r--drape_gui/ruler.cpp2
-rw-r--r--drape_gui/shape.cpp7
-rw-r--r--drape_head/drape_surface.cpp9
-rw-r--r--drape_head/testing_engine.cpp46
-rw-r--r--iphone/Maps/Classes/EAGLView.mm2
-rw-r--r--map/framework.cpp8
-rw-r--r--qt/draw_widget.cpp4
63 files changed, 254 insertions, 299 deletions
diff --git a/android/jni/com/mapswithme/maps/Framework.cpp b/android/jni/com/mapswithme/maps/Framework.cpp
index 40291edf4a..6fd2561c95 100644
--- a/android/jni/com/mapswithme/maps/Framework.cpp
+++ b/android/jni/com/mapswithme/maps/Framework.cpp
@@ -155,7 +155,7 @@ bool Framework::CreateDrapeEngine(JNIEnv * env, jobject jSurface, int densityDpi
return false;
float visualScale = GetBestDensity(densityDpi);
- m_work.CreateDrapeEngine(make_ref<dp::ThreadSafeFactory>(m_contextFactory), visualScale, factory->GetWidth(), factory->GetHeight());
+ m_work.CreateDrapeEngine(make_ref(m_contextFactory), visualScale, factory->GetWidth(), factory->GetHeight());
m_work.SetUpdatesEnabled(true);
m_work.EnterForeground();
LoadState();
diff --git a/drape/attribute_provider.cpp b/drape/attribute_provider.cpp
index 95144450e2..be6ec539ae 100644
--- a/drape/attribute_provider.cpp
+++ b/drape/attribute_provider.cpp
@@ -43,7 +43,7 @@ void const * AttributeProvider::GetRawPointer(uint8_t streamIndex)
{
ASSERT_LESS(streamIndex, GetStreamCount(), ());
CHECK_STREAMS;
- return m_streams[streamIndex].m_data;
+ return m_streams[streamIndex].m_data.get();
}
BindingInfo const & AttributeProvider::GetBindingInfo(uint8_t streamIndex) const
@@ -64,7 +64,7 @@ void AttributeProvider::Advance(uint16_t vertexCount)
{
BindingInfo const & info = m_streams[i].m_binding;
uint32_t offset = vertexCount * info.GetElementSize();
- void * rawPointer = m_streams[i].m_data;
+ void * rawPointer = m_streams[i].m_data.get();
m_streams[i].m_data = make_ref((void *)(((uint8_t *)rawPointer) + offset));
}
}
diff --git a/drape/batcher.cpp b/drape/batcher.cpp
index 93a6ff8ebd..b4ae912ec7 100644
--- a/drape/batcher.cpp
+++ b/drape/batcher.cpp
@@ -25,7 +25,7 @@ public:
{
// invocation with non-null VAO will cause to invalid range of indices.
// It means that VAO has been changed during batching
- if (!m_buffer.IsNull())
+ if (m_buffer != nullptr)
m_vaoChanged = true;
m_buffer = buffer;
@@ -112,9 +112,9 @@ Batcher::~Batcher()
m_buckets.clear();
}
-IndicesRange Batcher::InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params)
+void Batcher::InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params)
{
- return InsertTriangleList(state, params, drape_ptr<OverlayHandle>(nullptr));
+ InsertTriangleList(state, params, nullptr);
}
IndicesRange Batcher::InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params,
@@ -123,9 +123,9 @@ IndicesRange Batcher::InsertTriangleList(GLState const & state, ref_ptr<Attribut
return InsertTriangles<TriangleListBatch>(state, params, move(handle));
}
-IndicesRange Batcher::InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params)
+void Batcher::InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params)
{
- return InsertTriangleStrip(state, params, drape_ptr<OverlayHandle>(nullptr));
+ InsertTriangleStrip(state, params, nullptr);
}
IndicesRange Batcher::InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params,
@@ -134,9 +134,9 @@ IndicesRange Batcher::InsertTriangleStrip(GLState const & state, ref_ptr<Attribu
return InsertTriangles<TriangleStripBatch>(state, params, move(handle));
}
-IndicesRange Batcher::InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params)
+void Batcher::InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params)
{
- return InsertTriangleFan(state, params, drape_ptr<OverlayHandle>(nullptr));
+ InsertTriangleFan(state, params, nullptr);
}
IndicesRange Batcher::InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params,
@@ -145,10 +145,10 @@ IndicesRange Batcher::InsertTriangleFan(GLState const & state, ref_ptr<Attribute
return InsertTriangles<TriangleFanBatch>(state, params, move(handle));
}
-IndicesRange Batcher::InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params,
- uint8_t vertexStride)
+void Batcher::InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params,
+ uint8_t vertexStride)
{
- return InsertListOfStrip(state, params, drape_ptr<OverlayHandle>(nullptr), vertexStride);
+ InsertListOfStrip(state, params, nullptr, vertexStride);
}
IndicesRange Batcher::InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params,
@@ -184,11 +184,11 @@ ref_ptr<RenderBucket> Batcher::GetBucket(GLState const & state)
{
TBuckets::iterator it = m_buckets.find(state);
if (it != m_buckets.end())
- return make_ref<RenderBucket>(it->second);
+ return make_ref(it->second);
drape_ptr<VertexArrayBuffer> vao = make_unique_dp<VertexArrayBuffer>(m_indexBufferSize, m_vertexBufferSize);
drape_ptr<RenderBucket> buffer = make_unique_dp<RenderBucket>(move(vao));
- ref_ptr<RenderBucket> result = make_ref<RenderBucket>(buffer);
+ ref_ptr<RenderBucket> result = make_ref(buffer);
m_buckets.emplace(state, move(buffer));
return result;
@@ -228,7 +228,7 @@ IndicesRange Batcher::InsertTriangles(GLState const & state, ref_ptr<AttributePr
drape_ptr<OverlayHandle> handle = move(transferHandle);
{
- Batcher::CallbacksWrapper wrapper(state, make_ref<OverlayHandle>(handle));
+ Batcher::CallbacksWrapper wrapper(state, make_ref(handle));
wrapper.SetVAO(vao);
BatchCallbacks callbacks;
diff --git a/drape/batcher.hpp b/drape/batcher.hpp
index 34334f1be4..80ada3c26a 100644
--- a/drape/batcher.hpp
+++ b/drape/batcher.hpp
@@ -34,19 +34,19 @@ public:
void SetIndexBufferSize(uint32_t indexBufferSize) { m_indexBufferSize = indexBufferSize; }
void SetVertexBufferSize(uint32_t vertexBufferSize) { m_vertexBufferSize = vertexBufferSize; }
- IndicesRange InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params);
+ void InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params);
IndicesRange InsertTriangleList(GLState const & state, ref_ptr<AttributeProvider> params,
drape_ptr<OverlayHandle> && handle);
- IndicesRange InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params);
+ void InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params);
IndicesRange InsertTriangleStrip(GLState const & state, ref_ptr<AttributeProvider> params,
drape_ptr<OverlayHandle> && handle);
- IndicesRange InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params);
+ void InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params);
IndicesRange InsertTriangleFan(GLState const & state, ref_ptr<AttributeProvider> params,
drape_ptr<OverlayHandle> && handle);
- IndicesRange InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params, uint8_t vertexStride);
+ void InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params, uint8_t vertexStride);
IndicesRange InsertListOfStrip(GLState const & state, ref_ptr<AttributeProvider> params,
drape_ptr<OverlayHandle> && handle, uint8_t vertexStride);
diff --git a/drape/data_buffer.cpp b/drape/data_buffer.cpp
index 3caca0de8e..e9837ad0e2 100644
--- a/drape/data_buffer.cpp
+++ b/drape/data_buffer.cpp
@@ -9,14 +9,10 @@ DataBuffer::DataBuffer(uint8_t elementSize, uint16_t capacity)
{
}
-DataBuffer::~DataBuffer()
-{
-}
-
ref_ptr<DataBufferBase> DataBuffer::GetBuffer() const
{
ASSERT(m_impl != nullptr, ());
- return make_ref<DataBufferBase>(m_impl);
+ return make_ref(m_impl);
}
void DataBuffer::MoveToGPU(GPUBuffer::Target target)
@@ -24,21 +20,9 @@ void DataBuffer::MoveToGPU(GPUBuffer::Target target)
// if currentSize is 0 buffer hasn't been filled on preparation stage, let it be filled further
uint16_t const currentSize = m_impl->GetCurrentSize();
if (currentSize != 0)
- {
- drape_ptr<DataBufferBase> newImpl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(),
- m_impl->GetElementSize(),
- currentSize);
- m_impl.reset();
- m_impl = move(newImpl);
- }
+ m_impl = make_unique_dp<GpuBufferImpl>(target, m_impl->Data(),m_impl->GetElementSize(), currentSize);
else
- {
- drape_ptr<DataBufferBase> newImpl = make_unique_dp<GpuBufferImpl>(target, nullptr,
- m_impl->GetElementSize(),
- m_impl->GetAvailableSize());
- m_impl.reset();
- m_impl = move(newImpl);
- }
+ m_impl = make_unique_dp<GpuBufferImpl>(target, nullptr, m_impl->GetElementSize(), m_impl->GetAvailableSize());
}
diff --git a/drape/data_buffer.hpp b/drape/data_buffer.hpp
index 724cd33eb4..8aa9e7ea05 100644
--- a/drape/data_buffer.hpp
+++ b/drape/data_buffer.hpp
@@ -31,7 +31,6 @@ class DataBuffer
{
public:
DataBuffer(uint8_t elementSize, uint16_t capacity);
- virtual ~DataBuffer();
ref_ptr<DataBufferBase> GetBuffer() const;
void MoveToGPU(GPUBuffer::Target target);
diff --git a/drape/drape_tests/dummy_texture.hpp b/drape/drape_tests/dummy_texture.hpp
index 0b659c8cf2..4d2095bae4 100644
--- a/drape/drape_tests/dummy_texture.hpp
+++ b/drape/drape_tests/dummy_texture.hpp
@@ -14,6 +14,6 @@ public:
virtual ref_ptr<ResourceInfo> FindResource(Key const & /*key*/, bool & /*newResource*/)
{
- return make_ref<ResourceInfo>(nullptr);
+ return nullptr;
}
};
diff --git a/drape/drape_tests/font_texture_tests.cpp b/drape/drape_tests/font_texture_tests.cpp
index 415d52049f..1b4e4bd18e 100644
--- a/drape/drape_tests/font_texture_tests.cpp
+++ b/drape/drape_tests/font_texture_tests.cpp
@@ -99,9 +99,9 @@ UNIT_TEST(UploadingGlyphs)
index.MapResource(GlyphKey(0x61));
DummyTexture tex;
- tex.Create(64, 64, dp::ALPHA, make_ref<void>(nullptr));
+ tex.Create(64, 64, dp::ALPHA, nullptr);
EXPECTGL(glTexSubImage2D(_, _, _, _, _, _, _)).WillOnce(Invoke(&r, &UploadedRender::glMemoryToQImage));
- index.UploadResources(make_ref<Texture>(&tex));
+ index.UploadResources(make_ref(&tex));
index.MapResource(GlyphKey(0x68));
index.MapResource(GlyphKey(0x30));
@@ -111,7 +111,7 @@ UNIT_TEST(UploadingGlyphs)
index.MapResource(GlyphKey(0x401));
EXPECTGL(glTexSubImage2D(_, _, _, _, _, _, _)).WillOnce(Invoke(&r, &UploadedRender::glMemoryToQImage))
.WillOnce(Invoke(&r, &UploadedRender::glMemoryToQImage));
- index.UploadResources(make_ref<Texture>(&tex));
+ index.UploadResources(make_ref(&tex));
RunTestLoop("UploadingGlyphs", bind(&UploadedRender::Render, &r, _1));
}
diff --git a/drape/drape_tests/stipple_pen_tests.cpp b/drape/drape_tests/stipple_pen_tests.cpp
index 26e9874715..2620bb6a7c 100644
--- a/drape/drape_tests/stipple_pen_tests.cpp
+++ b/drape/drape_tests/stipple_pen_tests.cpp
@@ -456,7 +456,7 @@ UNIT_TEST(StippleMappingTest)
DummyTexture texture;
texture.Create(width, height, dp::ALPHA);
- index.UploadResources(make_ref<Texture>(&texture));
+ index.UploadResources(make_ref(&texture));
StipplePenKey secInfo;
secInfo.m_pattern.push_back(20);
@@ -478,6 +478,6 @@ UNIT_TEST(StippleMappingTest)
MemoryComparer cmp22(secondUploadSecondPartEtalon, ARRAY_SIZE(secondUploadSecondPartEtalon));
EXPECTGL(glTexSubImage2D(256, 0, 256, 2, AnyOf(gl_const::GLAlpha, gl_const::GLAlpha8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp22, &MemoryComparer::cmpSubImage));
- index.UploadResources(make_ref<Texture>(&texture));
+ index.UploadResources(make_ref(&texture));
EXPECTGL(glDeleteTexture(1));
}
diff --git a/drape/drape_tests/texture_of_colors_tests.cpp b/drape/drape_tests/texture_of_colors_tests.cpp
index 318f44a8f1..2c6cf2cc01 100644
--- a/drape/drape_tests/texture_of_colors_tests.cpp
+++ b/drape/drape_tests/texture_of_colors_tests.cpp
@@ -94,7 +94,7 @@ UNIT_TEST(ColorPalleteUploadingSingleRow)
DummyTexture texture;
texture.Create(width, height, dp::RGBA8);
DummyColorPallete cp(m2::PointU(width, height));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
{
cp.MapResource(dp::Color(0xFF, 0, 0, 0));
@@ -119,7 +119,7 @@ UNIT_TEST(ColorPalleteUploadingSingleRow)
EXPECTGL(glTexSubImage2D(0, 0, 10, 2, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
{
@@ -145,7 +145,7 @@ UNIT_TEST(ColorPalleteUploadingSingleRow)
EXPECTGL(glTexSubImage2D(10, 0, 10, 2, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
EXPECTGL(glDeleteTexture(1));
@@ -186,7 +186,7 @@ UNIT_TEST(ColorPalleteUploadingPartialyRow)
EXPECTGL(glTexSubImage2D(0, 0, 12, 2, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
{
@@ -219,7 +219,7 @@ UNIT_TEST(ColorPalleteUploadingPartialyRow)
EXPECTGL(glTexSubImage2D(0, 2, 4, 2, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp2, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
@@ -253,7 +253,7 @@ UNIT_TEST(ColorPalleteUploadingMultipyRow)
EXPECTGL(glTexSubImage2D(0, 0, 4, 2, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
{
@@ -297,7 +297,7 @@ UNIT_TEST(ColorPalleteUploadingMultipyRow)
EXPECTGL(glTexSubImage2D(0, 2, 8, 4, AnyOf(gl_const::GLRGBA, gl_const::GLRGBA8), gl_const::GL8BitOnChannel, _))
.WillOnce(Invoke(&cmp2, &MemoryComparer::cmpSubImage));
- cp.UploadResources(make_ref<Texture>(&texture));
+ cp.UploadResources(make_ref(&texture));
}
EXPECTGL(glDeleteTexture(1));
diff --git a/drape/dynamic_texture.hpp b/drape/dynamic_texture.hpp
index c19479a707..d5867146c2 100644
--- a/drape/dynamic_texture.hpp
+++ b/drape/dynamic_texture.hpp
@@ -19,7 +19,7 @@ public:
{
ASSERT(m_indexer != nullptr, ());
if (key.GetType() != TResourceType)
- return ref_ptr<ResourceInfo>();
+ return nullptr;
return m_indexer->MapResource(static_cast<TResourceKey const &>(key), newResource);
}
@@ -28,7 +28,7 @@ public:
{
ASSERT(m_indexer != nullptr, ());
Bind();
- m_indexer->UploadResources(make_ref<Texture>(this));
+ m_indexer->UploadResources(make_ref(this));
}
protected:
@@ -44,7 +44,7 @@ protected:
void Init(ref_ptr<TIndexer> indexer, TextureParams const & params)
{
- Init(indexer, params, make_ref<void>(nullptr));
+ Init(indexer, params, nullptr);
}
void Init(ref_ptr<TIndexer> indexer, TextureParams const & params, ref_ptr<void> data)
@@ -56,7 +56,7 @@ protected:
void Reset()
{
- m_indexer = ref_ptr<TIndexer>();
+ m_indexer = nullptr;
}
private:
diff --git a/drape/font_texture.cpp b/drape/font_texture.cpp
index c3e154946a..441c9dbd0b 100644
--- a/drape/font_texture.cpp
+++ b/drape/font_texture.cpp
@@ -100,7 +100,7 @@ ref_ptr<Texture::ResourceInfo> GlyphIndex::MapResource(GlyphKey const & key, boo
strings::UniChar uniChar = key.GetUnicodePoint();
auto it = m_index.find(uniChar);
if (it != m_index.end())
- return make_ref<Texture::ResourceInfo>(&it->second);
+ return make_ref(&it->second);
newResource = true;
@@ -109,7 +109,7 @@ ref_ptr<Texture::ResourceInfo> GlyphIndex::MapResource(GlyphKey const & key, boo
if (!m_packer.PackGlyph(glyph.m_image.m_width, glyph.m_image.m_height, r))
{
glyph.m_image.Destroy();
- return make_ref<GlyphInfo>(nullptr);
+ return nullptr;
}
{
@@ -119,7 +119,7 @@ ref_ptr<Texture::ResourceInfo> GlyphIndex::MapResource(GlyphKey const & key, boo
auto res = m_index.emplace(uniChar, GlyphInfo(m_packer.MapTextureCoords(r), glyph.m_metrics));
ASSERT(res.second, ());
- return make_ref<GlyphInfo>(&res.first->second);
+ return make_ref(&res.first->second);
}
void GlyphIndex::UploadResources(ref_ptr<Texture> texture)
@@ -196,7 +196,7 @@ void GlyphIndex::UploadResources(ref_ptr<Texture> texture)
glyph.m_image.Destroy();
}
- texture->UploadData(zeroPoint.x, zeroPoint.y, width, height, dp::ALPHA, make_ref<void>(dstMemory));
+ texture->UploadData(zeroPoint.x, zeroPoint.y, width, height, dp::ALPHA, make_ref(dstMemory));
SharedBufferManager::instance().freeSharedBuffer(byteCount, buffer);
}
}
diff --git a/drape/font_texture.hpp b/drape/font_texture.hpp
index 684af4b8ae..8b9edf55e7 100644
--- a/drape/font_texture.hpp
+++ b/drape/font_texture.hpp
@@ -97,7 +97,7 @@ public:
params.m_magFilter = gl_const::GLLinear;
vector<uint8_t> initData(params.m_size.x * params.m_size.y, 0);
- TBase::Init(make_ref(&m_index), params, make_ref<void>(initData.data()));
+ TBase::Init(make_ref(&m_index), params, make_ref(initData.data()));
}
~FontTexture() { TBase::Reset(); }
diff --git a/drape/glstate.cpp b/drape/glstate.cpp
index a94f6d534f..a7a7fc8dce 100644
--- a/drape/glstate.cpp
+++ b/drape/glstate.cpp
@@ -52,8 +52,8 @@ bool Blending::operator == (Blending const & other) const
GLState::GLState(uint32_t gpuProgramIndex, DepthLayer depthLayer)
: m_gpuProgramIndex(gpuProgramIndex)
, m_depthLayer(depthLayer)
- , m_colorTexture(make_ref<Texture>(nullptr))
- , m_maskTexture(make_ref<Texture>(nullptr))
+ , m_colorTexture(nullptr)
+ , m_maskTexture(nullptr)
{
}
diff --git a/drape/gpu_program_manager.cpp b/drape/gpu_program_manager.cpp
index c238575390..7d6c8aabce 100644
--- a/drape/gpu_program_manager.cpp
+++ b/drape/gpu_program_manager.cpp
@@ -43,7 +43,7 @@ ref_ptr<GpuProgram> GpuProgramManager::GetProgram(int index)
{
program_map_t::iterator it = m_programs.find(index);
if (it != m_programs.end())
- return make_ref<GpuProgram>(it->second);
+ return make_ref(it->second);
gpu::ProgramInfo const & programInfo = s_mapper.GetShaders(index);
ref_ptr<Shader> vertexShader = GetShader(programInfo.m_vertexIndex,
@@ -54,7 +54,7 @@ ref_ptr<GpuProgram> GpuProgramManager::GetProgram(int index)
Shader::FragmentShader);
drape_ptr<GpuProgram> program = make_unique_dp<GpuProgram>(vertexShader, fragmentShader);
- ref_ptr<GpuProgram> result = make_ref<GpuProgram>(program);
+ ref_ptr<GpuProgram> result = make_ref(program);
m_programs.emplace(index, move(program));
return result;
@@ -66,11 +66,11 @@ ref_ptr<Shader> GpuProgramManager::GetShader(int index, string const & source, S
if (it == m_shaders.end())
{
drape_ptr<Shader> shader = make_unique_dp<Shader>(source, t);
- ref_ptr<Shader> result = make_ref<Shader>(shader);
+ ref_ptr<Shader> result = make_ref(shader);
m_shaders.emplace(index, move(shader));
return result;
}
- return make_ref<Shader>(it->second);
+ return make_ref(it->second);
}
} // namespace dp
diff --git a/drape/pointers.cpp b/drape/pointers.cpp
index b157791747..186f378245 100644
--- a/drape/pointers.cpp
+++ b/drape/pointers.cpp
@@ -12,6 +12,19 @@ DpPointerTracker::~DpPointerTracker()
ASSERT(m_alivePointers.empty(), ());
}
+void DpPointerTracker::RefPtrNamed(void * refPtr, string const & name)
+{
+ lock_guard<mutex> lock(m_mutex);
+ if (refPtr != nullptr)
+ {
+ auto it = m_alivePointers.find(refPtr);
+ if (it != m_alivePointers.end())
+ it->second.first++;
+ else
+ m_alivePointers.insert(make_pair(refPtr, make_pair(1, name)));
+ }
+}
+
void DpPointerTracker::DestroyPtr(void * p)
{
lock_guard<mutex> lock(m_mutex);
diff --git a/drape/pointers.hpp b/drape/pointers.hpp
index 1ef1166f40..005ff1fd37 100644
--- a/drape/pointers.hpp
+++ b/drape/pointers.hpp
@@ -18,15 +18,7 @@ public:
template <typename T>
void RefPtr(T * refPtr)
{
- lock_guard<mutex> lock(m_mutex);
- if (refPtr != nullptr)
- {
- auto it = m_alivePointers.find(refPtr);
- if (it != m_alivePointers.end())
- it->second.first++;
- else
- m_alivePointers.insert(make_pair(refPtr, make_pair(1, typeid(refPtr).name())));
- }
+ RefPtrNamed(static_cast<void*>(refPtr), typeid(refPtr).name());
}
void DerefPtr(void * p);
@@ -37,6 +29,8 @@ private:
DpPointerTracker() = default;
~DpPointerTracker();
+ void RefPtrNamed(void * refPtr, string const & name);
+
typedef map<void *, pair<int, string> > TAlivePointers;
TAlivePointers m_alivePointers;
mutex m_mutex;
@@ -55,8 +49,10 @@ public:
};
#if defined(TRACK_POINTERS)
-
template<typename T> using drape_ptr = unique_ptr<T, DpPointerDeleter>;
+#else
+template<typename T> using drape_ptr = unique_ptr<T>;
+#endif
template <typename T, typename... Args>
drape_ptr<T> make_unique_dp(Args &&... args)
@@ -75,15 +71,19 @@ public:
ref_ptr(T * ptr, bool isOwnerUnique = false)
: m_ptr(ptr), m_isOwnerUnique(isOwnerUnique)
{
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().RefPtr(m_ptr);
+#endif
}
ref_ptr(ref_ptr const & rhs)
: m_ptr(rhs.m_ptr), m_isOwnerUnique(rhs.m_isOwnerUnique)
{
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().RefPtr(m_ptr);
+#endif
}
ref_ptr(ref_ptr && rhs)
@@ -97,20 +97,16 @@ public:
~ref_ptr()
{
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().DerefPtr(m_ptr);
+#endif
m_ptr = nullptr;
}
T * operator->() const { return m_ptr; }
template<typename TResult>
- operator TResult const *() const { return static_cast<TResult const *>(m_ptr); }
-
- template<typename TResult>
- operator TResult *() const { return static_cast<TResult *>(m_ptr); }
-
- template<typename TResult>
operator ref_ptr<TResult>() const
{
return ref_ptr<TResult>(static_cast<TResult *>(m_ptr), m_isOwnerUnique);
@@ -139,14 +135,18 @@ public:
if (this == &rhs)
return *this;
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().DerefPtr(m_ptr);
+#endif
m_ptr = rhs.m_ptr;
m_isOwnerUnique = rhs.m_isOwnerUnique;
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().RefPtr(m_ptr);
+#endif
return *this;
}
@@ -156,8 +156,10 @@ public:
if (this == &rhs)
return *this;
+#if defined(TRACK_POINTERS)
if (m_isOwnerUnique)
DpPointerTracker::Instance().DerefPtr(m_ptr);
+#endif
m_ptr = rhs.m_ptr;
rhs.m_ptr = nullptr;
@@ -168,15 +170,20 @@ public:
return *this;
}
+ T * get() const { return m_ptr; }
+
private:
T* m_ptr;
bool m_isOwnerUnique;
+
+ template <typename TResult>
+ friend inline string DebugPrint(ref_ptr<TResult> const & v);
};
template <typename T>
inline string DebugPrint(ref_ptr<T> const & v)
{
- return DebugPrint(static_cast<T*>(v));
+ return DebugPrint(v.m_ptr);
}
template <typename T>
@@ -190,28 +197,3 @@ ref_ptr<T> make_ref(T* ptr)
{
return ref_ptr<T>(ptr, false);
}
-
-#else
-
-template<typename T> using drape_ptr = unique_ptr<T>;
-template<typename T> using ref_ptr = T*;
-
-template <typename T, typename... Args>
-drape_ptr<T> make_unique_dp(Args &&... args)
-{
- return make_unique<T>(std::forward<Args>(args)...);
-}
-
-template <typename T>
-ref_ptr<T> make_ref(drape_ptr<T> const & drapePtr)
-{
- return ref_ptr<T>(drapePtr.get());
-}
-
-template <typename T>
-ref_ptr<T> make_ref(T * ptr)
-{
- return ref_ptr<T>(ptr);
-}
-
-#endif
diff --git a/drape/render_bucket.cpp b/drape/render_bucket.cpp
index 540126a195..1c1babad64 100644
--- a/drape/render_bucket.cpp
+++ b/drape/render_bucket.cpp
@@ -22,7 +22,7 @@ RenderBucket::~RenderBucket()
ref_ptr<VertexArrayBuffer> RenderBucket::GetBuffer()
{
- return make_ref<VertexArrayBuffer>(m_buffer);
+ return make_ref(m_buffer);
}
drape_ptr<VertexArrayBuffer> && RenderBucket::MoveBuffer()
@@ -47,7 +47,7 @@ drape_ptr<OverlayHandle> RenderBucket::PopOverlayHandle()
ref_ptr<OverlayHandle> RenderBucket::GetOverlayHandle(size_t index)
{
- return make_ref<OverlayHandle>(m_overlay[index]);
+ return make_ref(m_overlay[index]);
}
void RenderBucket::AddOverlayHandle(drape_ptr<OverlayHandle> && handle)
@@ -57,14 +57,14 @@ void RenderBucket::AddOverlayHandle(drape_ptr<OverlayHandle> && handle)
void RenderBucket::Update(ScreenBase const & modelView)
{
- for (drape_ptr<OverlayHandle> const & overlayHandle : m_overlay)
+ for (drape_ptr<OverlayHandle> & overlayHandle : m_overlay)
overlayHandle->Update(modelView);
}
void RenderBucket::CollectOverlayHandles(ref_ptr<OverlayTree> tree)
{
for (drape_ptr<OverlayHandle> const & overlayHandle : m_overlay)
- tree->Add(make_ref<OverlayHandle>(overlayHandle));
+ tree->Add(make_ref(overlayHandle));
}
void RenderBucket::Render(ScreenBase const & screen)
diff --git a/drape/render_bucket.hpp b/drape/render_bucket.hpp
index 7c0bc83bdb..5eddca0029 100644
--- a/drape/render_bucket.hpp
+++ b/drape/render_bucket.hpp
@@ -34,7 +34,7 @@ public:
void ForEachOverlay(ToDo const & todo)
{
for (drape_ptr<OverlayHandle> const & h : m_overlay)
- todo(h);
+ todo(make_ref(h));
}
private:
diff --git a/drape/stipple_pen_resource.cpp b/drape/stipple_pen_resource.cpp
index 140f81c1ef..119f3d68cd 100644
--- a/drape/stipple_pen_resource.cpp
+++ b/drape/stipple_pen_resource.cpp
@@ -144,7 +144,7 @@ ref_ptr<Texture::ResourceInfo> StipplePenIndex::MapResource(StipplePenKey const
StipplePenHandle handle(key);
TResourceMapping::iterator it = m_resourceMapping.find(handle);
if (it != m_resourceMapping.end())
- return make_ref<Texture::ResourceInfo>(&it->second);
+ return make_ref(&it->second);
newResource = true;
@@ -159,7 +159,7 @@ ref_ptr<Texture::ResourceInfo> StipplePenIndex::MapResource(StipplePenKey const
resource.GetSize(),
resource.GetPatternSize()));
ASSERT(res.second, ());
- return make_ref<Texture::ResourceInfo>(&res.first->second);
+ return make_ref(&res.first->second);
}
void StipplePenIndex::UploadResources(ref_ptr<Texture> texture)
@@ -227,7 +227,7 @@ void StipplePenIndex::UploadResources(ref_ptr<Texture> texture)
rawBuffer = SharedBufferManager::GetRawPointer(ptr);
texture->UploadData(minX, minY, COLUMN_WIDTH, lineCount,
- dp::ALPHA, make_ref<void>(rawBuffer));
+ dp::ALPHA, make_ref(rawBuffer));
mng.freeSharedBuffer(reserveBufferSize, ptr);
}
diff --git a/drape/symbols_texture.cpp b/drape/symbols_texture.cpp
index 60ed4164d2..9e7761ad37 100644
--- a/drape/symbols_texture.cpp
+++ b/drape/symbols_texture.cpp
@@ -159,7 +159,7 @@ void SymbolsTexture::Load(string const & skinPathName)
unsigned char * data = stbi_png_load_from_memory(&rawData[0], rawData.size(), &w, &h, &bpp, 0);
if (width == w && height == h)
- Create(width, height, RGBA8, make_ref<void>(data));
+ Create(width, height, RGBA8, make_ref(data));
else
Fail();
@@ -170,13 +170,13 @@ ref_ptr<Texture::ResourceInfo> SymbolsTexture::FindResource(Texture::Key const &
{
newResource = false;
if (key.GetType() != Texture::Symbol)
- return ref_ptr<ResourceInfo>();
+ return nullptr;
string const & symbolName = static_cast<SymbolKey const &>(key).GetSymbolName();
TSymDefinition::iterator it = m_definition.find(symbolName);
ASSERT(it != m_definition.end(), ());
- return make_ref<ResourceInfo>(&it->second);
+ return make_ref(&it->second);
}
void SymbolsTexture::Fail()
diff --git a/drape/symbols_texture.hpp b/drape/symbols_texture.hpp
index 2f43c65bd2..c165faf453 100644
--- a/drape/symbols_texture.hpp
+++ b/drape/symbols_texture.hpp
@@ -29,7 +29,7 @@ public:
virtual ResourceType GetType() const;
};
- SymbolsTexture(string const & skinPathName);
+ explicit SymbolsTexture(string const & skinPathName);
ref_ptr<ResourceInfo> FindResource(Key const & key, bool & newResource);
diff --git a/drape/texture.cpp b/drape/texture.cpp
index 9db789864a..9d87854a52 100644
--- a/drape/texture.cpp
+++ b/drape/texture.cpp
@@ -42,7 +42,7 @@ Texture::~Texture()
void Texture::Create(uint32_t width, uint32_t height, TextureFormat format)
{
- Create(width, height, format, make_ref<void>(NULL));
+ Create(width, height, format, nullptr);
}
void Texture::Create(uint32_t width, uint32_t height, TextureFormat format, ref_ptr<void> data)
@@ -63,7 +63,7 @@ void Texture::Create(uint32_t width, uint32_t height, TextureFormat format, ref_
glConst pixelType;
UnpackFormat(format, layout, pixelType);
- GLFunctions::glTexImage2D(m_width, m_height, layout, pixelType, static_cast<void*>(data));
+ GLFunctions::glTexImage2D(m_width, m_height, layout, pixelType, data.get());
SetFilterParams(gl_const::GLLinear, gl_const::GLLinear);
SetWrapMode(gl_const::GLClampToEdge, gl_const::GLClampToEdge);
@@ -107,7 +107,7 @@ void Texture::UploadData(uint32_t x, uint32_t y, uint32_t width, uint32_t height
UnpackFormat(format, layout, pixelType);
- GLFunctions::glTexSubImage2D(x, y, width, height, layout, pixelType, static_cast<void*>(data));
+ GLFunctions::glTexSubImage2D(x, y, width, height, layout, pixelType, data.get());
}
TextureFormat Texture::GetFormat() const
diff --git a/drape/texture_manager.cpp b/drape/texture_manager.cpp
index 31b80402d1..d445f8cd5e 100644
--- a/drape/texture_manager.cpp
+++ b/drape/texture_manager.cpp
@@ -48,8 +48,8 @@ TextureManager::TextureManager()
}
TextureManager::BaseRegion::BaseRegion()
- : m_info(make_ref<Texture::ResourceInfo>(nullptr))
- , m_texture(make_ref<Texture>(nullptr))
+ : m_info(nullptr)
+ , m_texture(nullptr)
{}
bool TextureManager::BaseRegion::IsValid() const
@@ -93,41 +93,41 @@ TextureManager::GlyphRegion::GlyphRegion()
float TextureManager::GlyphRegion::GetOffsetX() const
{
ASSERT(m_info->GetType() == Texture::Glyph, ());
- GlyphInfo const * info = static_cast<GlyphInfo const *>(m_info);
+ ref_ptr<GlyphInfo> info = static_cast<ref_ptr<GlyphInfo>>(m_info);
return info->GetMetrics().m_xOffset;
}
float TextureManager::GlyphRegion::GetOffsetY() const
{
ASSERT(m_info->GetType() == Texture::Glyph, ());
- GlyphInfo const * info = static_cast<GlyphInfo const *>(m_info);
+ ref_ptr<GlyphInfo> info = static_cast<ref_ptr<GlyphInfo>>(m_info);
return info->GetMetrics().m_yOffset;
}
float TextureManager::GlyphRegion::GetAdvanceX() const
{
ASSERT(m_info->GetType() == Texture::Glyph, ());
- GlyphInfo const * info = static_cast<GlyphInfo const *>(m_info);
+ ref_ptr<GlyphInfo> info = static_cast<ref_ptr<GlyphInfo>>(m_info);
return info->GetMetrics().m_xAdvance;
}
float TextureManager::GlyphRegion::GetAdvanceY() const
{
ASSERT(m_info->GetType() == Texture::Glyph, ());
- GlyphInfo const * info = static_cast<GlyphInfo const *>(m_info);
+ ref_ptr<GlyphInfo> info = static_cast<ref_ptr<GlyphInfo>>(m_info);
return info->GetMetrics().m_yAdvance;
}
uint32_t TextureManager::StippleRegion::GetMaskPixelLength() const
{
ASSERT(m_info->GetType() == Texture::StipplePen, ());
- return static_cast<StipplePenResourceInfo const *>(m_info)->GetMaskPixelLength();
+ return static_cast<ref_ptr<StipplePenResourceInfo>>(m_info)->GetMaskPixelLength();
}
uint32_t TextureManager::StippleRegion::GetPatternPixelLength() const
{
ASSERT(m_info->GetType() == Texture::StipplePen, ());
- return static_cast<StipplePenResourceInfo const *>(m_info)->GetPatternPixelLength();
+ return static_cast<ref_ptr<StipplePenResourceInfo>>(m_info)->GetPatternPixelLength();
}
void TextureManager::Release()
@@ -156,11 +156,9 @@ void TextureManager::UpdateDynamicTextures()
ref_ptr<Texture> TextureManager::AllocateGlyphTexture()
{
- drape_ptr<Texture> tex = make_unique_dp<FontTexture>(m2::PointU(m_maxTextureSize, m_maxTextureSize),
- make_ref<GlyphManager>(m_glyphManager));
- ref_ptr<Texture> result = make_ref<Texture>(tex);
- m_glyphTextures.push_back(move(tex));
- return result;
+ m2::PointU size(m_maxTextureSize, m_maxTextureSize);
+ m_glyphTextures.push_back(make_unique_dp<FontTexture>(size, make_ref(m_glyphManager)));
+ return make_ref(m_glyphTextures.back());
}
void TextureManager::GetRegionBase(ref_ptr<Texture> tex, TextureManager::BaseRegion & region, Texture::Key const & key)
@@ -287,12 +285,12 @@ size_t TextureManager::FindHybridGlyphsGroup(TMultilineText const & text)
void TextureManager::Init(Params const & params)
{
GLFunctions::glPixelStore(gl_const::GLUnpackAlignment, 1);
- m_symbolTexture = move(make_unique_dp<SymbolsTexture>(my::JoinFoldersToPath(string("resources-") + params.m_resPrefix, "symbols")));
+ m_symbolTexture = make_unique_dp<SymbolsTexture>(my::JoinFoldersToPath(string("resources-") + params.m_resPrefix, "symbols"));
- m_stipplePenTexture = move(make_unique_dp<StipplePenTexture>(m2::PointU(STIPPLE_TEXTURE_SIZE, STIPPLE_TEXTURE_SIZE)));
- m_colorTexture = move(make_unique_dp<ColorTexture>(m2::PointU(COLOR_TEXTURE_SIZE, COLOR_TEXTURE_SIZE)));
+ m_stipplePenTexture = make_unique_dp<StipplePenTexture>(m2::PointU(STIPPLE_TEXTURE_SIZE, STIPPLE_TEXTURE_SIZE));
+ m_colorTexture = make_unique_dp<ColorTexture>(m2::PointU(COLOR_TEXTURE_SIZE, COLOR_TEXTURE_SIZE));
- m_glyphManager = move(make_unique_dp<GlyphManager>(params.m_glyphMngParams));
+ m_glyphManager = make_unique_dp<GlyphManager>(params.m_glyphMngParams);
m_maxTextureSize = min(2048, GLFunctions::glGetInteger(gl_const::GLMaxTextureSize));
uint32_t const textureSquare = m_maxTextureSize * m_maxTextureSize;
@@ -321,17 +319,17 @@ void TextureManager::Init(Params const & params)
void TextureManager::GetSymbolRegion(string const & symbolName, SymbolRegion & region)
{
- GetRegionBase(make_ref<Texture>(m_symbolTexture), region, SymbolsTexture::SymbolKey(symbolName));
+ GetRegionBase(make_ref(m_symbolTexture), region, SymbolsTexture::SymbolKey(symbolName));
}
void TextureManager::GetStippleRegion(TStipplePattern const & pen, StippleRegion & region)
{
- GetRegionBase(make_ref<Texture>(m_stipplePenTexture), region, StipplePenKey(pen));
+ GetRegionBase(make_ref(m_stipplePenTexture), region, StipplePenKey(pen));
}
void TextureManager::GetColorRegion(Color const & color, ColorRegion & region)
{
- GetRegionBase(make_ref<Texture>(m_colorTexture), region, ColorKey(color));
+ GetRegionBase(make_ref(m_colorTexture), region, ColorKey(color));
}
void TextureManager::GetGlyphRegions(TMultilineText const & text, TMultilineGlyphsBuffer & buffers)
diff --git a/drape/texture_manager.hpp b/drape/texture_manager.hpp
index 3f00c9d668..9ba687ec8f 100644
--- a/drape/texture_manager.hpp
+++ b/drape/texture_manager.hpp
@@ -95,11 +95,11 @@ private:
struct GlyphGroup
{
GlyphGroup()
- : m_startChar(0), m_endChar(0), m_texture(make_ref<Texture>(nullptr))
+ : m_startChar(0), m_endChar(0), m_texture(nullptr)
{}
GlyphGroup(strings::UniChar const & start, strings::UniChar const & end)
- : m_startChar(start), m_endChar(end), m_texture(make_ref<Texture>(nullptr))
+ : m_startChar(start), m_endChar(end), m_texture(nullptr)
{}
strings::UniChar m_startChar;
@@ -110,7 +110,7 @@ private:
struct HybridGlyphGroup
{
HybridGlyphGroup()
- : m_texture(make_ref<Texture>(nullptr))
+ : m_texture(nullptr)
{}
unordered_set<strings::UniChar> m_glyphs;
diff --git a/drape/texture_of_colors.cpp b/drape/texture_of_colors.cpp
index 3b508a6408..776fbb073b 100644
--- a/drape/texture_of_colors.cpp
+++ b/drape/texture_of_colors.cpp
@@ -53,7 +53,7 @@ ref_ptr<Texture::ResourceInfo> ColorPalette::MapResource(ColorKey const & key, b
ASSERT(res.second, ());
itm = res.first;
}
- return make_ref<Texture::ResourceInfo>(&itm->second);
+ return make_ref(&itm->second);
}
void ColorPalette::UploadResources(ref_ptr<Texture> texture)
@@ -144,7 +144,7 @@ void ColorPalette::UploadResources(ref_ptr<Texture> texture)
pointer = SharedBufferManager::GetRawPointer(buffer);
texture->UploadData(uploadRect.minX(), uploadRect.minY(), uploadRect.SizeX(), uploadRect.SizeY(),
- dp::RGBA8, make_ref<void>(pointer));
+ dp::RGBA8, make_ref(pointer));
}
}
diff --git a/drape/vertex_array_buffer.cpp b/drape/vertex_array_buffer.cpp
index 3a0e30cc18..85c0918470 100644
--- a/drape/vertex_array_buffer.cpp
+++ b/drape/vertex_array_buffer.cpp
@@ -50,7 +50,7 @@ void VertexArrayBuffer::Preflush()
void VertexArrayBuffer::Render()
{
- RenderRange(IndicesRange(0, GetIndexBuffer().GetCurrentSize()));
+ RenderRange(IndicesRange(0, GetIndexBuffer()->GetCurrentSize()));
}
void VertexArrayBuffer::RenderRange(IndicesRange const & range)
@@ -123,9 +123,9 @@ ref_ptr<DataBuffer> VertexArrayBuffer::GetBuffer(BindingInfo const & bindingInfo
TBuffersMap::const_iterator it = buffers->find(bindingInfo);
if (it == buffers->end())
- return make_ref<DataBuffer>(nullptr);
+ return nullptr;
- return make_ref<DataBuffer>(it->second);
+ return make_ref(it->second);
}
ref_ptr<DataBuffer> VertexArrayBuffer::GetOrCreateBuffer(BindingInfo const & bindingInfo, bool isDynamic)
@@ -140,12 +140,12 @@ ref_ptr<DataBuffer> VertexArrayBuffer::GetOrCreateBuffer(BindingInfo const & bin
if (it == buffers->end())
{
drape_ptr<DataBuffer> dataBuffer = make_unique_dp<DataBuffer>(bindingInfo.GetElementSize(), m_dataBufferSize);
- ref_ptr<DataBuffer> result = make_ref<DataBuffer>(dataBuffer);
+ ref_ptr<DataBuffer> result = make_ref(dataBuffer);
(*buffers).insert(make_pair(bindingInfo, move(dataBuffer)));
return result;
}
- return make_ref<DataBuffer>(it->second);
+ return make_ref(it->second);
}
uint16_t VertexArrayBuffer::GetAvailableIndexCount() const
@@ -230,7 +230,7 @@ void VertexArrayBuffer::ApplyMutation(ref_ptr<IndexBufferMutator> indexMutator,
{
MutateNode const & node = nodes[i];
ASSERT_GREATER(node.m_region.m_count, 0, ());
- mapper.UpdateData(node.m_data, node.m_region.m_offset, node.m_region.m_count);
+ mapper.UpdateData(node.m_data.get(), node.m_region.m_offset, node.m_region.m_count);
}
}
}
@@ -257,7 +257,7 @@ void VertexArrayBuffer::BindBuffers(TBuffersMap const & buffers) const
for (; it != buffers.end(); ++it)
{
BindingInfo const & binding = it->first;
- ref_ptr<DataBuffer> buffer = make_ref<DataBuffer>(it->second);
+ ref_ptr<DataBuffer> buffer = make_ref(it->second);
buffer->GetBuffer()->Bind();
for (uint16_t i = 0; i < binding.GetCount(); ++i)
diff --git a/drape_frontend/area_shape.cpp b/drape_frontend/area_shape.cpp
index 659d300845..56763a6bc4 100644
--- a/drape_frontend/area_shape.cpp
+++ b/drape_frontend/area_shape.cpp
@@ -40,7 +40,7 @@ void AreaShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManager> t
state.SetColorTexture(region.GetTexture());
dp::AttributeProvider provider(1, m_vertexes.size());
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(vertexes.data()));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(vertexes.data()));
batcher->InsertTriangleList(state, make_ref(&provider));
}
diff --git a/drape_frontend/backend_renderer.cpp b/drape_frontend/backend_renderer.cpp
index 52ffa98215..8b9e2c4427 100644
--- a/drape_frontend/backend_renderer.cpp
+++ b/drape_frontend/backend_renderer.cpp
@@ -69,7 +69,7 @@ void BackendRenderer::AcceptMessage(ref_ptr<Message> message)
{
case Message::UpdateReadManager:
{
- ref_ptr<UpdateReadManagerMessage> msg = df::CastMessage<UpdateReadManagerMessage>(message);
+ ref_ptr<UpdateReadManagerMessage> msg = static_cast<ref_ptr<UpdateReadManagerMessage>>(message);
ScreenBase const & screen = msg->GetScreen();
TTilesCollection const & tiles = msg->GetTiles();
m_readManager->UpdateCoverage(screen, tiles);
@@ -82,7 +82,7 @@ void BackendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::Resize:
{
- ref_ptr<ResizeMessage> msg = df::CastMessage<ResizeMessage>(message);
+ ref_ptr<ResizeMessage> msg = static_cast<ref_ptr<ResizeMessage>>(message);
df::Viewport const & v = msg->GetViewport();
m_guiCacher.Resize(v.GetWidth(), v.GetHeight());
RecacheGui(gui::Skin::AllElements);
@@ -90,27 +90,27 @@ void BackendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::InvalidateReadManagerRect:
{
- InvalidateReadManagerRectMessage * msg = df::CastMessage<InvalidateReadManagerRectMessage>(message);
+ ref_ptr<InvalidateReadManagerRectMessage> msg = static_cast<ref_ptr<InvalidateReadManagerRectMessage>>(message);
m_readManager->Invalidate(msg->GetTilesForInvalidate());
break;
}
case Message::GuiRecache:
- RecacheGui(CastMessage<GuiRecacheMessage>(message)->GetElements());
+ RecacheGui(static_cast<ref_ptr<GuiRecacheMessage>>(message)->GetElements());
break;
case Message::TileReadStarted:
{
- m_batchersPool->ReserveBatcher(df::CastMessage<BaseTileMessage>(message)->GetKey());
+ m_batchersPool->ReserveBatcher(static_cast<ref_ptr<BaseTileMessage>>(message)->GetKey());
break;
}
case Message::TileReadEnded:
{
- ref_ptr<TileReadEndMessage> msg = df::CastMessage<TileReadEndMessage>(message);
+ ref_ptr<TileReadEndMessage> msg = static_cast<ref_ptr<TileReadEndMessage>>(message);
m_batchersPool->ReleaseBatcher(msg->GetKey());
break;
}
case Message::FinishReading:
{
- ref_ptr<FinishReadingMessage> msg = df::CastMessage<FinishReadingMessage>(message);
+ ref_ptr<FinishReadingMessage> msg = static_cast<ref_ptr<FinishReadingMessage>>(message);
m_commutator->PostMessage(ThreadsCommutator::RenderThread,
make_unique_dp<FinishReadingMessage>(move(msg->MoveTiles())),
MessagePriority::Normal);
@@ -118,7 +118,7 @@ void BackendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::MapShapeReaded:
{
- ref_ptr<MapShapeReadedMessage> msg = df::CastMessage<MapShapeReadedMessage>(message);
+ ref_ptr<MapShapeReadedMessage> msg = static_cast<ref_ptr<MapShapeReadedMessage>>(message);
ref_ptr<dp::Batcher> batcher = m_batchersPool->GetTileBatcher(msg->GetKey());
for (drape_ptr<MapShape> const & shape : msg->GetShapes())
shape->Draw(batcher, m_texturesManager);
@@ -126,7 +126,7 @@ void BackendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::UpdateUserMarkLayer:
{
- ref_ptr<UpdateUserMarkLayerMessage> msg = df::CastMessage<UpdateUserMarkLayerMessage>(message);
+ ref_ptr<UpdateUserMarkLayerMessage> msg = static_cast<ref_ptr<UpdateUserMarkLayerMessage>>(message);
TileKey const & key = msg->GetKey();
m_commutator->PostMessage(ThreadsCommutator::RenderThread,
diff --git a/drape_frontend/circle_shape.cpp b/drape_frontend/circle_shape.cpp
index 0aa13e09b8..948be35d73 100644
--- a/drape_frontend/circle_shape.cpp
+++ b/drape_frontend/circle_shape.cpp
@@ -57,7 +57,7 @@ void CircleShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManager>
m_params.m_depth);
dp::AttributeProvider provider(1, TriangleCount + 2);
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(vertexes.data()));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(vertexes.data()));
batcher->InsertTriangleFan(state, make_ref(&provider), move(overlay));
}
diff --git a/drape_frontend/drape_engine.cpp b/drape_frontend/drape_engine.cpp
index 22976d58f4..deda3a6605 100644
--- a/drape_frontend/drape_engine.cpp
+++ b/drape_frontend/drape_engine.cpp
@@ -30,17 +30,17 @@ DrapeEngine::DrapeEngine(Params const & params)
gui::DrapeGui & guiSubsystem = gui::DrapeGui::Instance();
guiSubsystem.Init(scaleFn, gnLvlFn);
- guiSubsystem.SetLocalizator(bind(&StringsBundle::GetString, static_cast<StringsBundle*>(params.m_stringsBundle), _1));
+ guiSubsystem.SetLocalizator(bind(&StringsBundle::GetString, params.m_stringsBundle.get(), _1));
guiSubsystem.SetStorageAccessor(params.m_storageAccessor);
- m_textureManager = move(make_unique_dp<dp::TextureManager>());
- m_threadCommutator = move(make_unique_dp<ThreadsCommutator>());
+ m_textureManager = make_unique_dp<dp::TextureManager>();
+ m_threadCommutator = make_unique_dp<ThreadsCommutator>();
- m_frontend = move(make_unique_dp<FrontendRenderer>(make_ref<ThreadsCommutator>(m_threadCommutator), params.m_factory,
- make_ref<dp::TextureManager>(m_textureManager), m_viewport));
+ m_frontend = make_unique_dp<FrontendRenderer>(make_ref(m_threadCommutator), params.m_factory,
+ make_ref(m_textureManager), m_viewport);
- m_backend = move(make_unique_dp<BackendRenderer>(make_ref<ThreadsCommutator>(m_threadCommutator), params.m_factory,
- make_ref<dp::TextureManager>(m_textureManager), params.m_model));
+ m_backend = make_unique_dp<BackendRenderer>(make_ref(m_threadCommutator), params.m_factory,
+ make_ref(m_textureManager), params.m_model);
}
DrapeEngine::~DrapeEngine()
diff --git a/drape_frontend/engine_context.cpp b/drape_frontend/engine_context.cpp
index d338e4ad85..08862bf96d 100644
--- a/drape_frontend/engine_context.cpp
+++ b/drape_frontend/engine_context.cpp
@@ -3,7 +3,6 @@
//#define DRAW_TILE_NET
#include "drape_frontend/message_subclasses.hpp"
-#include "drape_frontend/map_shape.hpp"
#ifdef DRAW_TILE_NET
#include "drape_frontend/line_shape.hpp"
#include "drape_frontend/text_shape.hpp"
diff --git a/drape_frontend/engine_context.hpp b/drape_frontend/engine_context.hpp
index 16a5135d8e..a16f20a8cb 100644
--- a/drape_frontend/engine_context.hpp
+++ b/drape_frontend/engine_context.hpp
@@ -1,5 +1,6 @@
#pragma once
+#include "drape_frontend/map_shape.hpp"
#include "drape_frontend/tile_utils.hpp"
#include "drape_frontend/threads_commutator.hpp"
@@ -8,7 +9,6 @@
namespace df
{
-class MapShape;
class Message;
class EngineContext
diff --git a/drape_frontend/frontend_renderer.cpp b/drape_frontend/frontend_renderer.cpp
index 6fd69d9fa3..5184793150 100755
--- a/drape_frontend/frontend_renderer.cpp
+++ b/drape_frontend/frontend_renderer.cpp
@@ -108,30 +108,30 @@ void FrontendRenderer::AcceptMessage(ref_ptr<Message> message)
{
case Message::FlushTile:
{
- ref_ptr<FlushRenderBucketMessage> msg = df::CastMessage<FlushRenderBucketMessage>(message);
+ ref_ptr<FlushRenderBucketMessage> msg = static_cast<ref_ptr<FlushRenderBucketMessage>>(message);
dp::GLState const & state = msg->GetState();
TileKey const & key = msg->GetKey();
- drape_ptr<dp::RenderBucket> bucket = move(msg->AcceptBuffer());
+ drape_ptr<dp::RenderBucket> bucket = msg->AcceptBuffer();
ref_ptr<dp::GpuProgram> program = m_gpuProgramManager->GetProgram(state.GetProgramIndex());
program->Bind();
bucket->GetBuffer()->Build(program);
if (!IsUserMarkLayer(key))
m_tileTree->ProcessTile(key, GetCurrentZoomLevel(), state, move(bucket));
else
- m_userMarkRenderGroups.emplace_back(new UserMarkRenderGroup(state, key, move(bucket)));
+ m_userMarkRenderGroups.emplace_back(make_unique_dp<UserMarkRenderGroup>(state, key, move(bucket)));
break;
}
case Message::FinishReading:
{
- ref_ptr<FinishReadingMessage> msg = df::CastMessage<FinishReadingMessage>(message);
+ ref_ptr<FinishReadingMessage> msg = static_cast<ref_ptr<FinishReadingMessage>>(message);
m_tileTree->FinishTiles(msg->GetTiles(), GetCurrentZoomLevel());
break;
}
case Message::Resize:
{
- ref_ptr<ResizeMessage> rszMsg = df::CastMessage<ResizeMessage>(message);
+ ref_ptr<ResizeMessage> rszMsg = static_cast<ref_ptr<ResizeMessage>>(message);
m_viewport = rszMsg->GetViewport();
m_view.OnSize(m_viewport.GetX0(), m_viewport.GetY0(),
m_viewport.GetWidth(), m_viewport.GetHeight());
@@ -153,14 +153,14 @@ void FrontendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::MyPositionShape:
- m_myPositionMark = CastMessage<MyPositionShapeMessage>(message)->AcceptShape();
+ m_myPositionMark = static_cast<ref_ptr<MyPositionShapeMessage>>(message)->AcceptShape();
break;
case Message::InvalidateRect:
{
// TODO(@kuznetsov): implement invalidation
- //InvalidateRectMessage * m = df::CastMessage<InvalidateRectMessage>(message);
+ //InvalidateRectMessage * m = static_cast<ref_ptr<InvalidateRectMessage>>(message);
//TTilesCollection keyStorage;
//Message * msgToBackend = new InvalidateReadManagerRectMessage(keyStorage);
//m_commutator->PostMessage(ThreadsCommutator::ResourceUploadThread,
@@ -171,8 +171,8 @@ void FrontendRenderer::AcceptMessage(ref_ptr<Message> message)
case Message::ClearUserMarkLayer:
{
- TileKey const & tileKey = df::CastMessage<ClearUserMarkLayerMessage>(message)->GetKey();
- auto const functor = [&tileKey](unique_ptr<UserMarkRenderGroup> const & g)
+ TileKey const & tileKey = static_cast<ref_ptr<ClearUserMarkLayerMessage>>(message)->GetKey();
+ auto const functor = [&tileKey](drape_ptr<UserMarkRenderGroup> const & g)
{
return g->GetTileKey() == tileKey;
};
@@ -186,7 +186,7 @@ void FrontendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::ChangeUserMarkLayerVisibility:
{
- ref_ptr<ChangeUserMarkLayerVisibilityMessage> m = df::CastMessage<ChangeUserMarkLayerVisibilityMessage>(message);
+ ref_ptr<ChangeUserMarkLayerVisibilityMessage> m = static_cast<ref_ptr<ChangeUserMarkLayerVisibilityMessage>>(message);
TileKey const & key = m->GetKey();
if (m->IsVisible())
m_userMarkVisibility.insert(key);
@@ -196,13 +196,13 @@ void FrontendRenderer::AcceptMessage(ref_ptr<Message> message)
}
case Message::GuiLayerRecached:
{
- ref_ptr<GuiLayerRecachedMessage> msg = df::CastMessage<GuiLayerRecachedMessage>(message);
+ ref_ptr<GuiLayerRecachedMessage> msg = static_cast<ref_ptr<GuiLayerRecachedMessage>>(message);
drape_ptr<gui::LayerRenderer> renderer = move(msg->AcceptRenderer());
- renderer->Build(make_ref<dp::GpuProgramManager>(m_gpuProgramManager));
+ renderer->Build(make_ref(m_gpuProgramManager));
if (m_guiRenderer == nullptr)
m_guiRenderer = move(renderer);
else
- m_guiRenderer->Merge(make_ref<gui::LayerRenderer>(renderer));
+ m_guiRenderer->Merge(make_ref(renderer));
break;
}
case Message::StopRendering:
@@ -220,12 +220,12 @@ unique_ptr<threads::IRoutine> FrontendRenderer::CreateRoutine()
return make_unique<Routine>(*this);
}
-void FrontendRenderer::AddToRenderGroup(vector<unique_ptr<RenderGroup>> & groups,
+void FrontendRenderer::AddToRenderGroup(vector<drape_ptr<RenderGroup>> & groups,
dp::GLState const & state,
drape_ptr<dp::RenderBucket> && renderBucket,
TileKey const & newTile)
{
- unique_ptr<RenderGroup> group(new RenderGroup(state, newTile));
+ drape_ptr<RenderGroup> group = make_unique_dp<RenderGroup>(state, newTile);
group->AddBucket(move(renderBucket));
groups.push_back(move(group));
}
@@ -266,7 +266,7 @@ void FrontendRenderer::OnRemoveTile(TileKey const & tileKey)
group->DeleteLater();
}
- auto removePredicate = [&tileKey](unique_ptr<RenderGroup> const & group)
+ auto removePredicate = [&tileKey](drape_ptr<RenderGroup> const & group)
{
return group->GetTileKey() == tileKey;
};
@@ -289,7 +289,7 @@ void FrontendRenderer::RenderScene()
size_t eraseCount = 0;
for (size_t i = 0; i < m_renderGroups.size(); ++i)
{
- unique_ptr<RenderGroup> & group = m_renderGroups[i];
+ drape_ptr<RenderGroup> & group = m_renderGroups[i];
if (group->IsEmpty())
continue;
@@ -319,7 +319,7 @@ void FrontendRenderer::RenderScene()
GLFunctions::glClear();
dp::GLState::DepthLayer prevLayer = dp::GLState::GeometryLayer;
- for (unique_ptr<RenderGroup> const & group : m_renderGroups)
+ for (drape_ptr<RenderGroup> const & group : m_renderGroups)
{
dp::GLState const & state = group->GetState();
dp::GLState::DepthLayer layer = state.GetDepthLayer();
@@ -327,7 +327,7 @@ void FrontendRenderer::RenderScene()
{
GLFunctions::glClearDepth();
if (m_myPositionMark != nullptr)
- m_myPositionMark->Render(m_view, make_ref<dp::GpuProgramManager>(m_gpuProgramManager), m_generalUniforms);
+ m_myPositionMark->Render(m_view, make_ref(m_gpuProgramManager), m_generalUniforms);
}
prevLayer = layer;
@@ -343,7 +343,7 @@ void FrontendRenderer::RenderScene()
GLFunctions::glClearDepth();
- for (unique_ptr<UserMarkRenderGroup> const & group : m_userMarkRenderGroups)
+ for (drape_ptr<UserMarkRenderGroup> const & group : m_userMarkRenderGroups)
{
ASSERT(group.get() != nullptr, ());
if (m_userMarkVisibility.find(group->GetTileKey()) != m_userMarkVisibility.end())
@@ -359,7 +359,7 @@ void FrontendRenderer::RenderScene()
GLFunctions::glClearDepth();
if (m_guiRenderer != nullptr)
- m_guiRenderer->Render(make_ref<dp::GpuProgramManager>(m_gpuProgramManager), m_view);
+ m_guiRenderer->Render(make_ref(m_gpuProgramManager), m_view);
#ifdef DRAW_INFO
AfterDrawFrame();
diff --git a/drape_frontend/frontend_renderer.hpp b/drape_frontend/frontend_renderer.hpp
index 86cd659be5..74f9ff4c72 100755
--- a/drape_frontend/frontend_renderer.hpp
+++ b/drape_frontend/frontend_renderer.hpp
@@ -91,7 +91,7 @@ private:
// it applies new model-view matrix to the scene (this matrix will be used on next frame)
void UpdateScene();
- void AddToRenderGroup(vector<unique_ptr<RenderGroup>> & groups,
+ void AddToRenderGroup(vector<drape_ptr<RenderGroup>> & groups,
dp::GLState const & state,
drape_ptr<dp::RenderBucket> && renderBucket,
TileKey const & newTile);
@@ -108,9 +108,9 @@ private:
drape_ptr<dp::GpuProgramManager> m_gpuProgramManager;
private:
- vector<unique_ptr<RenderGroup>> m_renderGroups;
- vector<unique_ptr<RenderGroup>> m_deferredRenderGroups;
- vector<unique_ptr<UserMarkRenderGroup>> m_userMarkRenderGroups;
+ vector<drape_ptr<RenderGroup>> m_renderGroups;
+ vector<drape_ptr<RenderGroup>> m_deferredRenderGroups;
+ vector<drape_ptr<UserMarkRenderGroup>> m_userMarkRenderGroups;
set<TileKey> m_userMarkVisibility;
drape_ptr<gui::LayerRenderer> m_guiRenderer;
diff --git a/drape_frontend/line_shape.cpp b/drape_frontend/line_shape.cpp
index 3040cc4073..94e82f5594 100644
--- a/drape_frontend/line_shape.cpp
+++ b/drape_frontend/line_shape.cpp
@@ -295,7 +295,7 @@ void LineShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManager> t
state.SetMaskTexture(maskRegion.GetTexture());
dp::AttributeProvider provider(1, geometry.size());
- provider.InitStream(0, gpu::LineVertex::GetBindingInfo(), make_ref<void>(geometry.data()));
+ provider.InitStream(0, gpu::LineVertex::GetBindingInfo(), make_ref(geometry.data()));
batcher->InsertListOfStrip(state, make_ref(&provider), 4);
}
diff --git a/drape_frontend/map_shape.hpp b/drape_frontend/map_shape.hpp
index 221fa01927..310c2103f9 100644
--- a/drape_frontend/map_shape.hpp
+++ b/drape_frontend/map_shape.hpp
@@ -1,7 +1,7 @@
#pragma once
#include "drape_frontend/message.hpp"
-#include "drape_frontend/tile_info.hpp"
+#include "drape_frontend/tile_key.hpp"
#include "drape/pointers.hpp"
diff --git a/drape_frontend/message_acceptor.cpp b/drape_frontend/message_acceptor.cpp
index a6ba88baa9..09996d8aa1 100644
--- a/drape_frontend/message_acceptor.cpp
+++ b/drape_frontend/message_acceptor.cpp
@@ -7,11 +7,11 @@ namespace df
void MessageAcceptor::ProcessSingleMessage(unsigned maxTimeWait)
{
- drape_ptr<Message> message = move(m_messageQueue.PopMessage(maxTimeWait));
+ drape_ptr<Message> message = m_messageQueue.PopMessage(maxTimeWait);
if (message == nullptr)
return;
- AcceptMessage(make_ref<Message>(message));
+ AcceptMessage(make_ref(message));
}
void MessageAcceptor::PostMessage(drape_ptr<Message> && message, MessagePriority priority)
diff --git a/drape_frontend/message_queue.cpp b/drape_frontend/message_queue.cpp
index bb54237c89..8f68a2bc0f 100644
--- a/drape_frontend/message_queue.cpp
+++ b/drape_frontend/message_queue.cpp
@@ -21,7 +21,7 @@ drape_ptr<Message> MessageQueue::PopMessage(unsigned maxTimeWait)
/// even waitNonEmpty == true m_messages can be empty after WaitMessage call
/// if application preparing to close and CancelWait been called
if (m_messages.empty())
- return drape_ptr<Message>();
+ return nullptr;
drape_ptr<Message> msg = move(m_messages.front());
m_messages.pop_front();
diff --git a/drape_frontend/message_subclasses.hpp b/drape_frontend/message_subclasses.hpp
index ae0fb12468..54d4ff7b08 100644
--- a/drape_frontend/message_subclasses.hpp
+++ b/drape_frontend/message_subclasses.hpp
@@ -149,12 +149,6 @@ private:
TTilesCollection m_tiles;
};
-template <typename T>
-ref_ptr<T> CastMessage(ref_ptr<Message> msg)
-{
- return ref_ptr<T>(static_cast<T*>(msg));
-}
-
class ClearUserMarkLayerMessage : public BaseTileMessage
{
public:
diff --git a/drape_frontend/my_position.cpp b/drape_frontend/my_position.cpp
index 391768f614..37e1950dd6 100644
--- a/drape_frontend/my_position.cpp
+++ b/drape_frontend/my_position.cpp
@@ -187,7 +187,7 @@ void MyPosition::CachePointPosition(ref_ptr<dp::TextureManager> mng)
drape_ptr<dp::RenderBucket> bucket = move(b);
ASSERT(bucket->GetOverlayHandlesCount() == 0, ());
- m_nodes.emplace_back(state, move(bucket->MoveBuffer()));
+ m_nodes.emplace_back(state, bucket->MoveBuffer());
});
dp::AttributeProvider pointProvider(1 /*stream count*/, dp::Batcher::VertexPerQuad);
diff --git a/drape_frontend/path_symbol_shape.cpp b/drape_frontend/path_symbol_shape.cpp
index d4aef61919..0b5d9b1c20 100644
--- a/drape_frontend/path_symbol_shape.cpp
+++ b/drape_frontend/path_symbol_shape.cpp
@@ -62,7 +62,7 @@ void PathSymbolShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureMana
state.SetColorTexture(region.GetTexture());
dp::AttributeProvider provider(1, buffer.size());
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(buffer.data()));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(buffer.data()));
batcher->InsertListOfStrip(state, make_ref(&provider), 4);
}
diff --git a/drape_frontend/path_text_shape.cpp b/drape_frontend/path_text_shape.cpp
index 8ab20efc00..6a74d349c4 100644
--- a/drape_frontend/path_text_shape.cpp
+++ b/drape_frontend/path_text_shape.cpp
@@ -117,9 +117,8 @@ PathTextShape::PathTextShape(m2::SharedSpline const & spline,
void PathTextShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManager> textures) const
{
- PathTextLayout * layout = new PathTextLayout(strings::MakeUniString(m_params.m_text),
- m_params.m_textFont.m_size,
- textures);
+ unique_ptr<PathTextLayout> layout = make_unique<PathTextLayout>(strings::MakeUniString(m_params.m_text),
+ m_params.m_textFont.m_size, textures);
uint32_t glyphCount = layout->GetGlyphCount();
if (glyphCount == 0)
@@ -191,7 +190,7 @@ void PathTextShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManage
ASSERT(!offsets.empty(), ());
gpu::TTextStaticVertexBuffer staticBuffer;
gpu::TTextDynamicVertexBuffer dynBuffer;
- SharedTextLayout layoutPtr(layout);
+ SharedTextLayout layoutPtr(layout.release());
for (float offset : offsets)
{
staticBuffer.clear();
@@ -199,14 +198,14 @@ void PathTextShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManage
Spline::iterator iter = m_spline.CreateIterator();
iter.Advance(offset);
- layout->CacheStaticGeometry(glsl::vec3(glsl::ToVec2(iter.m_pos), m_params.m_depth),
- color, outline, staticBuffer);
+ layoutPtr->CacheStaticGeometry(glsl::vec3(glsl::ToVec2(iter.m_pos), m_params.m_depth),
+ color, outline, staticBuffer);
dynBuffer.resize(staticBuffer.size(), gpu::TextDynamicVertex(glsl::vec2(0.0, 0.0)));
dp::AttributeProvider provider(2, staticBuffer.size());
- provider.InitStream(0, gpu::TextStaticVertex::GetBindingInfo(), make_ref<void>(staticBuffer.data()));
- provider.InitStream(1, gpu::TextDynamicVertex::GetBindingInfo(), make_ref<void>(dynBuffer.data()));
+ provider.InitStream(0, gpu::TextStaticVertex::GetBindingInfo(), make_ref(staticBuffer.data()));
+ provider.InitStream(1, gpu::TextDynamicVertex::GetBindingInfo(), make_ref(dynBuffer.data()));
drape_ptr<dp::OverlayHandle> handle = make_unique_dp<PathTextHandle>(m_spline, layoutPtr, offset, m_params.m_depth);
batcher->InsertListOfStrip(state, make_ref(&provider), move(handle), 4);
diff --git a/drape_frontend/poi_symbol_shape.cpp b/drape_frontend/poi_symbol_shape.cpp
index 81f46d31e0..f07281cf5c 100644
--- a/drape_frontend/poi_symbol_shape.cpp
+++ b/drape_frontend/poi_symbol_shape.cpp
@@ -48,7 +48,7 @@ void PoiSymbolShape::Draw(ref_ptr<dp::Batcher> batcher, ref_ptr<dp::TextureManag
state.SetColorTexture(region.GetTexture());
dp::AttributeProvider provider(1, 4);
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(vertexes));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(vertexes));
drape_ptr<dp::OverlayHandle> handle = make_unique_dp<dp::SquareHandle>(m_params.m_id,
dp::Center,
diff --git a/drape_frontend/render_group.cpp b/drape_frontend/render_group.cpp
index 2800c36cb2..6121199eb7 100755
--- a/drape_frontend/render_group.cpp
+++ b/drape_frontend/render_group.cpp
@@ -21,20 +21,20 @@ RenderGroup::~RenderGroup()
void RenderGroup::Update(ScreenBase const & modelView)
{
- for(drape_ptr<dp::RenderBucket> const & renderBucket : m_renderBuckets)
+ for(drape_ptr<dp::RenderBucket> & renderBucket : m_renderBuckets)
renderBucket->Update(modelView);
}
void RenderGroup::CollectOverlay(ref_ptr<dp::OverlayTree> tree)
{
- for(drape_ptr<dp::RenderBucket> const & renderBucket : m_renderBuckets)
+ for(drape_ptr<dp::RenderBucket> & renderBucket : m_renderBuckets)
renderBucket->CollectOverlayHandles(tree);
}
void RenderGroup::Render(ScreenBase const & screen)
{
ASSERT(m_pendingOnDelete == false, ());
- for(drape_ptr<dp::RenderBucket> const & renderBucket : m_renderBuckets)
+ for(drape_ptr<dp::RenderBucket> & renderBucket : m_renderBuckets)
renderBucket->Render(screen);
}
@@ -65,7 +65,7 @@ void RenderGroupComparator::ResetInternalState()
m_needGroupMergeOperation = false;
}
-bool RenderGroupComparator::operator()(unique_ptr<RenderGroup> const & l, unique_ptr<RenderGroup> const & r)
+bool RenderGroupComparator::operator()(drape_ptr<RenderGroup> const & l, drape_ptr<RenderGroup> const & r)
{
dp::GLState const & lState = l->GetState();
dp::GLState const & rState = r->GetState();
diff --git a/drape_frontend/render_group.hpp b/drape_frontend/render_group.hpp
index f04e785191..0edc99e9c7 100755
--- a/drape_frontend/render_group.hpp
+++ b/drape_frontend/render_group.hpp
@@ -69,7 +69,7 @@ public:
void ResetInternalState();
- bool operator()(unique_ptr<RenderGroup> const & l, unique_ptr<RenderGroup> const & r);
+ bool operator()(drape_ptr<RenderGroup> const & l, drape_ptr<RenderGroup> const & r);
private:
bool m_needGroupMergeOperation;
diff --git a/drape_frontend/text_shape.cpp b/drape_frontend/text_shape.cpp
index 3cfd233b04..199ab27158 100644
--- a/drape_frontend/text_shape.cpp
+++ b/drape_frontend/text_shape.cpp
@@ -146,8 +146,8 @@ void TextShape::DrawSubString(StraightTextLayout const & layout,
m_params.m_depth);
dp::AttributeProvider provider(2, staticBuffer.size());
- provider.InitStream(0, gpu::TextStaticVertex::GetBindingInfo(), make_ref<void>(staticBuffer.data()));
- provider.InitStream(1, gpu::TextDynamicVertex::GetBindingInfo(), make_ref<void>(dynamicBuffer.data()));
+ provider.InitStream(0, gpu::TextStaticVertex::GetBindingInfo(), make_ref(staticBuffer.data()));
+ provider.InitStream(1, gpu::TextDynamicVertex::GetBindingInfo(), make_ref(dynamicBuffer.data()));
batcher->InsertListOfStrip(state, make_ref(&provider), move(handle), 4);
}
diff --git a/drape_frontend/tile_info.cpp b/drape_frontend/tile_info.cpp
index e2916cf78c..b27694465a 100644
--- a/drape_frontend/tile_info.cpp
+++ b/drape_frontend/tile_info.cpp
@@ -36,8 +36,8 @@ struct IDsAccumulator
namespace df
{
-TileInfo::TileInfo(EngineContext const & context)
- : m_context(context)
+TileInfo::TileInfo(EngineContext && context)
+ : m_context(move(context))
, m_isCanceled(false)
{}
diff --git a/drape_frontend/tile_info.hpp b/drape_frontend/tile_info.hpp
index fe29d60923..08a9baa79d 100644
--- a/drape_frontend/tile_info.hpp
+++ b/drape_frontend/tile_info.hpp
@@ -25,7 +25,7 @@ class TileInfo : private noncopyable
public:
DECLARE_EXCEPTION(ReadCanceledException, RootException);
- TileInfo(EngineContext const & context);
+ TileInfo(EngineContext && context);
void ReadFeatures(MapDataProvider const & model,
MemoryFeatureIndex & memIndex);
diff --git a/drape_frontend/user_mark_shapes.cpp b/drape_frontend/user_mark_shapes.cpp
index 8922bb5bfa..4d01aa6294 100644
--- a/drape_frontend/user_mark_shapes.cpp
+++ b/drape_frontend/user_mark_shapes.cpp
@@ -120,7 +120,7 @@ void CacheUserPoints(UserMarksProvider const * provider,
state.SetColorTexture(region.GetTexture());
dp::AttributeProvider attribProvider(1, buffer.size());
- attribProvider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(buffer.data()));
+ attribProvider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(buffer.data()));
batcher->InsertListOfStrip(state, make_ref(&attribProvider), dp::Batcher::VertexPerQuad);
}
diff --git a/drape_gui/compass.cpp b/drape_gui/compass.cpp
index c13d6c9bf0..8c1f76e702 100644
--- a/drape_gui/compass.cpp
+++ b/drape_gui/compass.cpp
@@ -84,14 +84,14 @@ drape_ptr<ShapeRenderer> Compass::Draw(ref_ptr<dp::TextureManager> tex) const
texDecl.m_offset = sizeof(glsl::vec2);
texDecl.m_stride = posDecl.m_stride;
- provider.InitStream(0, info, make_ref<void>(&vertexes));
+ provider.InitStream(0, info, make_ref(&vertexes));
m2::PointF compassSize = region.GetPixelSize();
drape_ptr<dp::OverlayHandle> handle = make_unique_dp<CompassHandle>(m_position.m_pixelPivot, compassSize);
drape_ptr<ShapeRenderer> renderer = make_unique_dp<ShapeRenderer>();
dp::Batcher batcher(dp::Batcher::IndexPerQuad, dp::Batcher::VertexPerQuad);
- dp::SessionGuard guard(batcher, bind(&ShapeRenderer::AddShape, static_cast<ShapeRenderer*>(make_ref(renderer)), _1, _2));
+ dp::SessionGuard guard(batcher, bind(&ShapeRenderer::AddShape, renderer.get(), _1, _2));
batcher.InsertTriangleStrip(state, make_ref(&provider), move(handle));
return renderer;
diff --git a/drape_gui/copyright_label.cpp b/drape_gui/copyright_label.cpp
index 2c5233ab2d..6a67e28c4f 100644
--- a/drape_gui/copyright_label.cpp
+++ b/drape_gui/copyright_label.cpp
@@ -75,7 +75,7 @@ drape_ptr<ShapeRenderer> CopyrightLabel::Draw(ref_ptr<dp::TextureManager> tex) c
drape_ptr<ShapeRenderer> renderer = make_unique_dp<ShapeRenderer>();
dp::Batcher batcher(indexCount, vertexCount);
- dp::SessionGuard guard(batcher, bind(&ShapeRenderer::AddShape, static_cast<ShapeRenderer*>(make_ref(renderer)), _1, _2));
+ dp::SessionGuard guard(batcher, bind(&ShapeRenderer::AddShape, renderer.get(), _1, _2));
batcher.InsertListOfStrip(result.m_state, make_ref(&provider),
move(handle), dp::Batcher::VertexPerQuad);
diff --git a/drape_gui/country_status.cpp b/drape_gui/country_status.cpp
index 56f3a6678c..b6c357f62b 100644
--- a/drape_gui/country_status.cpp
+++ b/drape_gui/country_status.cpp
@@ -77,7 +77,7 @@ void DrawLabelControl(string const & text, dp::Anchor anchor, dp::Batcher::TFlus
dp::AttributeProvider provider(1 /*stream count*/, vertexCount);
provider.InitStream(0 /*stream index*/, StaticLabel::Vertex::GetBindingInfo(),
- make_ref<void>(result.m_buffer.data()));
+ make_ref(result.m_buffer.data()));
dp::Batcher batcher(indexCount, vertexCount);
dp::SessionGuard guard(batcher, flushFn);
@@ -110,13 +110,13 @@ drape_ptr<ShapeRenderer> CountryStatus::Draw(ref_ptr<dp::TextureManager> tex) co
{
CountryStatusHelper & helper = DrapeGui::GetCountryStatusHelper();
if (helper.GetComponentCount() == 0)
- return drape_ptr<ShapeRenderer>();
+ return nullptr;
CountryStatusHelper::ECountryState const state = helper.GetState();
ASSERT(state != CountryStatusHelper::COUNTRY_STATE_LOADED, ());
drape_ptr<ShapeRenderer> renderer = make_unique_dp<ShapeRenderer>();
- dp::Batcher::TFlushFn flushFn = bind(&ShapeRenderer::AddShape, static_cast<ShapeRenderer*>(make_ref(renderer)), _1, _2);
+ dp::Batcher::TFlushFn flushFn = bind(&ShapeRenderer::AddShape, renderer.get(), _1, _2);
for (size_t i = 0; i < helper.GetComponentCount(); ++i)
{
@@ -156,7 +156,7 @@ drape_ptr<ShapeRenderer> CountryStatus::Draw(ref_ptr<dp::TextureManager> tex) co
buffer_vector<float, 4> heights;
float totalHeight = 0.0f;
- ArrangeShapes(make_ref<ShapeRenderer>(renderer), [&heights, &totalHeight](ShapeControl & shape)
+ ArrangeShapes(make_ref(renderer), [&heights, &totalHeight](ShapeControl & shape)
{
float height = 0.0f;
for (ShapeControl::ShapeInfo & info : shape.m_shapesInfo)
@@ -174,7 +174,7 @@ drape_ptr<ShapeRenderer> CountryStatus::Draw(ref_ptr<dp::TextureManager> tex) co
glsl::vec2 pen(m_position.m_pixelPivot.x, m_position.m_pixelPivot.y - halfHeight);
size_t controlIndex = 0;
- ArrangeShapes(make_ref<ShapeRenderer>(renderer), [&](ShapeControl & shape)
+ ArrangeShapes(make_ref(renderer), [&](ShapeControl & shape)
{
float const h = heights[controlIndex];
float const halfH = h * 0.5f;
diff --git a/drape_gui/gui_text.cpp b/drape_gui/gui_text.cpp
index 8620a5901f..f865498c0a 100644
--- a/drape_gui/gui_text.cpp
+++ b/drape_gui/gui_text.cpp
@@ -428,10 +428,6 @@ MutableLabelHandle::MutableLabelHandle(dp::Anchor anchor, const m2::PointF & piv
{
}
-MutableLabelHandle::~MutableLabelHandle()
-{
-}
-
void MutableLabelHandle::GetAttributeMutation(ref_ptr<dp::AttributeBufferMutator> mutator,
ScreenBase const & screen) const
{
@@ -462,7 +458,7 @@ void MutableLabelHandle::GetAttributeMutation(ref_ptr<dp::AttributeBufferMutator
ref_ptr<MutableLabel> MutableLabelHandle::GetTextView()
{
- return make_ref<MutableLabel>(m_textView);
+ return make_ref(m_textView);
}
void MutableLabelHandle::UpdateSize(m2::PointF const & size) { m_size = size; }
@@ -492,7 +488,7 @@ void MutableLabelDrawer::Draw(Params const & params, ref_ptr<dp::TextureManager>
uint32_t indexCount = dp::Batcher::IndexPerQuad * params.m_maxLength;
ASSERT(params.m_handleCreator != nullptr, ());
- drape_ptr<MutableLabelHandle> handle = move(params.m_handleCreator(params.m_anchor, params.m_pivot));
+ drape_ptr<MutableLabelHandle> handle = params.m_handleCreator(params.m_anchor, params.m_pivot);
MutableLabel::PrecacheParams preCacheP;
preCacheP.m_alphabet = params.m_alphabet;
@@ -512,8 +508,8 @@ void MutableLabelDrawer::Draw(Params const & params, ref_ptr<dp::TextureManager>
dp::BindingInfo const & dBinding = MutableLabel::DynamicVertex::GetBindingInfo();
dp::AttributeProvider provider(2 /*stream count*/, staticData.m_buffer.size());
provider.InitStream(0 /*stream index*/, sBinding,
- make_ref<void>(staticData.m_buffer.data()));
- provider.InitStream(1 /*stream index*/, dBinding, make_ref<void>(dynData.data()));
+ make_ref(staticData.m_buffer.data()));
+ provider.InitStream(1 /*stream index*/, dBinding, make_ref(dynData.data()));
{
dp::Batcher batcher(indexCount, vertexCount);
diff --git a/drape_gui/gui_text.hpp b/drape_gui/gui_text.hpp
index 244002a3ac..b29e9b0bf1 100644
--- a/drape_gui/gui_text.hpp
+++ b/drape_gui/gui_text.hpp
@@ -140,7 +140,6 @@ class MutableLabelHandle : public Handle
public:
MutableLabelHandle(dp::Anchor anchor, m2::PointF const & pivot);
- ~MutableLabelHandle();
void GetAttributeMutation(ref_ptr<dp::AttributeBufferMutator> mutator,
ScreenBase const & screen) const override;
diff --git a/drape_gui/layer_render.cpp b/drape_gui/layer_render.cpp
index 5cc83958b8..09d0f70012 100644
--- a/drape_gui/layer_render.cpp
+++ b/drape_gui/layer_render.cpp
@@ -106,8 +106,7 @@ drape_ptr<LayerRenderer> LayerCacher::Recache(Skin::ElementName names,
};
drape_ptr<ShapeRenderer> scaleRenderer = make_unique_dp<ShapeRenderer>();
- MutableLabelDrawer::Draw(params, textures, bind(&ShapeRenderer::AddShape,
- static_cast<ShapeRenderer*>(make_ref(scaleRenderer)), _1, _2));
+ MutableLabelDrawer::Draw(params, textures, bind(&ShapeRenderer::AddShape, scaleRenderer.get(), _1, _2));
renderer->AddShapeRenderer(Skin::ScaleLabel, move(scaleRenderer));
#endif
@@ -146,14 +145,9 @@ void LayerRenderer::Merge(ref_ptr<LayerRenderer> other)
{
TRenderers::iterator it = m_renderers.find(r.first);
if (it != m_renderers.end())
- {
- it->second.reset();
it->second = move(r.second);
- }
else
- {
m_renderers.insert(make_pair(r.first, move(r.second)));
- }
}
other->m_renderers.clear();
diff --git a/drape_gui/ruler.cpp b/drape_gui/ruler.cpp
index d6388ce287..1b99b590fa 100644
--- a/drape_gui/ruler.cpp
+++ b/drape_gui/ruler.cpp
@@ -143,7 +143,7 @@ void Ruler::DrawRuler(ShapeControl & control, ref_ptr<dp::TextureManager> tex) c
state.SetColorTexture(reg.GetTexture());
dp::AttributeProvider provider(1, 4);
- provider.InitStream(0, GetBindingInfo(), make_ref<void>(data.data()));
+ provider.InitStream(0, GetBindingInfo(), make_ref(data.data()));
{
dp::Batcher batcher(dp::Batcher::IndexPerQuad, dp::Batcher::VertexPerQuad);
diff --git a/drape_gui/shape.cpp b/drape_gui/shape.cpp
index 0fe8a49eb7..b1cb00f40e 100644
--- a/drape_gui/shape.cpp
+++ b/drape_gui/shape.cpp
@@ -78,8 +78,7 @@ void ShapeRenderer::Render(ScreenBase const & screen, ref_ptr<dp::GpuProgramMana
dp::AttributeBufferMutator mutator;
ref_ptr<dp::AttributeBufferMutator> mutatorRef = make_ref(&mutator);
info.m_handle->GetAttributeMutation(mutatorRef, screen);
- info.m_buffer->ApplyMutation(make_ref<dp::IndexBufferMutator>(nullptr),
- mutatorRef);
+ info.m_buffer->ApplyMutation(nullptr, mutatorRef);
}
info.m_buffer->Render();
@@ -127,13 +126,13 @@ void ShapeControl::AddShape(dp::GLState const & state, drape_ptr<dp::RenderBucke
{
ASSERT(bucket->GetOverlayHandlesCount() == 1, ());
- drape_ptr<dp::OverlayHandle> handle = move(bucket->PopOverlayHandle());
+ drape_ptr<dp::OverlayHandle> handle = bucket->PopOverlayHandle();
ASSERT(dynamic_cast<Handle *>(handle.get()) != nullptr, ());
m_shapesInfo.push_back(ShapeInfo());
ShapeInfo & info = m_shapesInfo.back();
info.m_state = state;
- info.m_buffer = move(bucket->MoveBuffer());
+ info.m_buffer = bucket->MoveBuffer();
info.m_handle = drape_ptr<Handle>(static_cast<Handle*>(handle.release()));
}
diff --git a/drape_head/drape_surface.cpp b/drape_head/drape_surface.cpp
index f941742d36..8aeca78781 100644
--- a/drape_head/drape_surface.cpp
+++ b/drape_head/drape_surface.cpp
@@ -25,7 +25,7 @@ void DrapeSurface::exposeEvent(QExposeEvent *e)
{
if (m_contextFactory == nullptr)
{
- m_contextFactory = move(make_unique_dp<dp::ThreadSafeFactory>(new QtOGLContextFactory(this), false));
+ m_contextFactory = make_unique_dp<dp::ThreadSafeFactory>(new QtOGLContextFactory(this), false);
CreateEngine();
}
}
@@ -33,11 +33,10 @@ void DrapeSurface::exposeEvent(QExposeEvent *e)
void DrapeSurface::CreateEngine()
{
- ref_ptr<dp::OGLContextFactory> f = make_ref<dp::OGLContextFactory>(m_contextFactory);
-
float const pixelRatio = devicePixelRatio();
-
- m_drapeEngine = move(make_unique_dp<df::TestingEngine>(f, df::Viewport(0, 0, pixelRatio * width(), pixelRatio * height()), pixelRatio));
+ m_drapeEngine = make_unique_dp<df::TestingEngine>(make_ref(m_contextFactory),
+ df::Viewport(0, 0, pixelRatio * width(), pixelRatio * height()),
+ pixelRatio);
}
void DrapeSurface::sizeChanged(int)
diff --git a/drape_head/testing_engine.cpp b/drape_head/testing_engine.cpp
index 12e20a86c9..b10a0ea2dc 100644
--- a/drape_head/testing_engine.cpp
+++ b/drape_head/testing_engine.cpp
@@ -57,7 +57,7 @@ public:
dp::AttributeProvider provider(1 /* streamCount */, result.m_buffer.size());
provider.InitStream(0 /* streamIndex */, gui::StaticLabel::Vertex::GetBindingInfo(),
- make_ref<void>(result.m_buffer.data()));
+ make_ref(result.m_buffer.data()));
batcher->InsertListOfStrip(result.m_state, make_ref(&provider),
4 /* vertexStride */);
@@ -100,9 +100,9 @@ public:
dp::AttributeProvider provider(2, dynResult.m_buffer.size());
provider.InitStream(0 /* streamIndex */, gui::MutableLabel::StaticVertex::GetBindingInfo(),
- make_ref<void>(staticData.m_buffer.data()));
+ make_ref(staticData.m_buffer.data()));
provider.InitStream(1 /* streamIndex */, gui::MutableLabel::DynamicVertex::GetBindingInfo(),
- make_ref<void>(dynResult.m_buffer.data()));
+ make_ref(dynResult.m_buffer.data()));
batcher->InsertListOfStrip(staticData.m_state, make_ref(&provider), 4);
}
@@ -148,7 +148,7 @@ public:
dp::AttributeProvider provider(1, 4);
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(vertexes));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(vertexes));
dp::GLState state(gpu::TEXTURING_PROGRAM, dp::GLState::GeometryLayer);
state.SetColorTexture(region.GetTexture());
@@ -184,7 +184,7 @@ public:
};
dp::AttributeProvider provider(1, 4);
- provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref<void>(vertexes));
+ provider.InitStream(0, gpu::SolidTexturingVertex::GetBindingInfo(), make_ref(vertexes));
dp::GLState state(gpu::TEXTURING_PROGRAM, dp::GLState::GeometryLayer);
state.SetColorTexture(region.GetTexture());
@@ -356,11 +356,11 @@ TestingEngine::TestingEngine(ref_ptr<dp::OGLContextFactory> oglcontextfactory,
params.m_glyphMngParams.m_blacklist = "fonts_blacklist.txt";
GetPlatform().GetFontNames(params.m_glyphMngParams.m_fonts);
- m_textures = move(make_unique_dp<dp::TextureManager>());
+ m_textures = make_unique_dp<dp::TextureManager>();
m_textures->Init(params);
- m_batcher = move(make_unique_dp<dp::Batcher>());
- m_programManager = move(make_unique_dp<dp::GpuProgramManager>());
+ m_batcher = make_unique_dp<dp::Batcher>();
+ m_programManager = make_unique_dp<dp::GpuProgramManager>();
ModelViewInit();
ProjectionInit();
@@ -463,7 +463,7 @@ void TestingEngine::DrawImpl()
params.m_secondaryTextFont = auxFd;
params.m_secondaryText = "Народная Китайская республика";
TextShape sh1(m2::PointF(82.277071f, 56.9271164f), params);
- sh1.Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ sh1.Draw(make_ref(m_batcher), make_ref(m_textures));
vector<m2::PointD> path;
path.push_back(m2::PointD(92.277071f, 50.9271164f));
@@ -477,7 +477,7 @@ void TestingEngine::DrawImpl()
ptvp.m_text = "Some text";
ptvp.m_textFont = dp::FontDecl(dp::Color::Black(), 40, dp::Color::Red());
- PathTextShape(spline, ptvp).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ PathTextShape(spline, ptvp).Draw(make_ref(m_batcher), make_ref(m_textures));
LineViewParams lvp;
lvp.m_baseGtoPScale = ptvp.m_baseGtoPScale;
lvp.m_depth = 90.0f;
@@ -485,7 +485,7 @@ void TestingEngine::DrawImpl()
lvp.m_color = dp::Color::Red();
lvp.m_width = 16.0f;
lvp.m_join = dp::BevelJoin;
- LineShape(spline, lvp).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ LineShape(spline, lvp).Draw(make_ref(m_batcher), make_ref(m_textures));
{
PathSymbolViewParams p;
@@ -494,7 +494,7 @@ void TestingEngine::DrawImpl()
p.m_offset = 0.0f;
p.m_step = 60.0f;
p.m_symbolName = "swimming";
- PathSymbolShape(spline, p).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ PathSymbolShape(spline, p).Draw(make_ref(m_batcher), make_ref(m_textures));
}
{
@@ -511,14 +511,14 @@ void TestingEngine::DrawImpl()
lvp.m_join = dp::RoundJoin;
lvp.m_cap = dp::RoundCap;
lvp.m_color = dp::Color::Black();
- LineShape(spl1, lvp).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ LineShape(spl1, lvp).Draw(make_ref(m_batcher), make_ref(m_textures));
}
{
PoiSymbolViewParams p(FeatureID(-1, 0));
p.m_depth = 0.0f;
p.m_symbolName = "subway-station-l";
- PoiSymbolShape(m2::PointF(92.27f, 30.0f), p).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ PoiSymbolShape(m2::PointF(92.27f, 30.0f), p).Draw(make_ref(m_batcher), make_ref(m_textures));
}
{
@@ -526,7 +526,7 @@ void TestingEngine::DrawImpl()
p.m_color = dp::Color::Red();
p.m_depth = 0.0f;
p.m_radius = 28.0f;
- CircleShape(m2::PointF(94.27f, 30.0f), p).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ CircleShape(m2::PointF(94.27f, 30.0f), p).Draw(make_ref(m_batcher), make_ref(m_textures));
}
{
@@ -535,7 +535,7 @@ void TestingEngine::DrawImpl()
AreaViewParams p;
p.m_color = dp::Color::White();
p.m_depth = 0.0f;
- AreaShape(move(trg), p).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ AreaShape(move(trg), p).Draw(make_ref(m_batcher), make_ref(m_textures));
}
m_batcher->EndSession();
@@ -550,10 +550,10 @@ void TestingEngine::DrawImpl()
lvpl.m_pattern.clear();
lvpl.m_depth = -10.0f;
lvpl.m_width = 2.0f;
- LineShape(spl, lvpl).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ LineShape(spl, lvpl).Draw(make_ref(m_batcher), make_ref(m_textures));
DummyMutableLabel tt(m2::PointF(120.0f, 30.0f), "200 km");
- tt.Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ tt.Draw(make_ref(m_batcher), make_ref(m_textures));
}
m_batcher->EndSession();
@@ -569,17 +569,17 @@ void TestingEngine::DrawImpl()
lvpl.m_pattern.clear();
lvpl.m_depth = -10.0f;
lvpl.m_width = 2.0f;
- LineShape(spl, lvpl).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ LineShape(spl, lvpl).Draw(make_ref(m_batcher), make_ref(m_textures));
}
dp::FontDecl font(dp::Color::Black(), 14);
DummyLabel(m2::PointF(110.0f, 25.0f), "Top\nText", dp::LeftTop, font)
- .Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ .Draw(make_ref(m_batcher), make_ref(m_textures));
DummyLabel(m2::PointF(120.0f, 25.0f), "Center\nText", dp::Center, font)
- .Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ .Draw(make_ref(m_batcher), make_ref(m_textures));
DummyLabel(m2::PointF(130.0f, 25.0f), "Bottom\nText", dp::RightBottom, font)
- .Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ .Draw(make_ref(m_batcher), make_ref(m_textures));
}
m_batcher->EndSession();
}
@@ -609,7 +609,7 @@ void TestingEngine::DrawRects()
};
m2::SharedSpline spline(path);
- LineShape(spline, lvp).Draw(make_ref<dp::Batcher>(m_batcher), make_ref<dp::TextureManager>(m_textures));
+ LineShape(spline, lvp).Draw(make_ref(m_batcher), make_ref(m_textures));
};
for (m2::RectD const & r : m_boundRects)
diff --git a/iphone/Maps/Classes/EAGLView.mm b/iphone/Maps/Classes/EAGLView.mm
index 0561897a9e..d8f154769d 100644
--- a/iphone/Maps/Classes/EAGLView.mm
+++ b/iphone/Maps/Classes/EAGLView.mm
@@ -93,7 +93,7 @@ graphics::EDensity getDensityType(int exactDensityDPI, double scale)
// Correct retina display support in opengl renderbuffer
self.contentScaleFactor = [self correctContentScale];
- m_factory = move(make_unique_dp<dp::ThreadSafeFactory>(new iosOGLContextFactory(eaglLayer)));
+ m_factory = make_unique_dp<dp::ThreadSafeFactory>(new iosOGLContextFactory(eaglLayer));
}
NSLog(@"EAGLView initWithCoder Ended");
diff --git a/map/framework.cpp b/map/framework.cpp
index c834aea193..52df03c56a 100644
--- a/map/framework.cpp
+++ b/map/framework.cpp
@@ -174,7 +174,7 @@ Framework::Framework()
{
m_activeMaps.reset(new ActiveMapsLayout(*this));
m_globalCntTree = storage::CountryTree(m_activeMaps);
- m_storageAccessor = move(make_unique_dp<StorageBridge>(m_activeMaps));
+ m_storageAccessor = make_unique_dp<StorageBridge>(m_activeMaps);
// Restore map style before classificator loading
int mapStyle = MapStyleLight;
@@ -1389,18 +1389,18 @@ void Framework::CreateDrapeEngine(ref_ptr<dp::OGLContextFactory> contextFactory,
df::DrapeEngine::Params p(contextFactory,
make_ref(&m_stringsBundle),
- make_ref<gui::StorageAccessor>(m_storageAccessor),
+ make_ref(m_storageAccessor),
df::Viewport(0, 0, w, h),
df::MapDataProvider(idReadFn, featureReadFn, resolveCountry),
vs);
- m_drapeEngine = move(make_unique_dp<df::DrapeEngine>(p));
+ m_drapeEngine = make_unique_dp<df::DrapeEngine>(p);
OnSize(w, h);
}
ref_ptr<df::DrapeEngine> Framework::GetDrapeEngine()
{
- return make_ref<df::DrapeEngine>(m_drapeEngine);
+ return make_ref(m_drapeEngine);
}
void Framework::DestroyDrapeEngine()
diff --git a/qt/draw_widget.cpp b/qt/draw_widget.cpp
index 9e54bc6637..67aaafb6fb 100644
--- a/qt/draw_widget.cpp
+++ b/qt/draw_widget.cpp
@@ -183,7 +183,7 @@ namespace qt
void DrawWidget::CreateEngine()
{
- m_framework->CreateDrapeEngine(make_ref<dp::OGLContextFactory>(m_contextFactory), m_ratio,
+ m_framework->CreateDrapeEngine(make_ref(m_contextFactory), m_ratio,
m_ratio * width(), m_ratio * height());
}
@@ -196,7 +196,7 @@ namespace qt
if (m_contextFactory == nullptr)
{
m_ratio = devicePixelRatio();
- m_contextFactory = move(make_unique_dp<dp::ThreadSafeFactory>(new QtOGLContextFactory(this)));
+ m_contextFactory = make_unique_dp<dp::ThreadSafeFactory>(new QtOGLContextFactory(this));
CreateEngine();
LoadState();
UpdateScaleControl();