blob: fb8c175dce0148aeec37caecae1ca9240f9883e2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
#pragma once
#include "drape/pointers.hpp"
#include "drape/oglcontextfactory.hpp"
#include "drape/batcher.hpp"
#include "drape/gpu_program_manager.hpp"
#include "drape/uniform_values_storage.hpp"
#include "drape/texture_manager.hpp"
#include "drape_frontend/viewport.hpp"
#include "drape_frontend/map_data_provider.hpp"
#include "std/map.hpp"
namespace df
{
class TestingEngine
{
public:
TestingEngine(Viewport const & viewport, double vs);
~TestingEngine();
void Draw();
void Resize(int w, int h);
private:
void DrawImpl();
void DrawRects();
void ModelViewInit();
void ProjectionInit();
void OnFlushData(dp::GLState const & state, drape_ptr<dp::RenderBucket> && vao);
void ClearScene();
private:
drape_ptr<dp::Batcher> m_batcher;
drape_ptr<dp::GpuProgramManager> m_programManager;
drape_ptr<dp::TextureManager> m_textures;
df::Viewport m_viewport;
typedef map<dp::GLState, vector<drape_ptr<dp::RenderBucket> > > TScene;
TScene m_scene;
ScreenBase m_modelView;
float m_angle = 0.0;
dp::UniformValuesStorage m_generalUniforms;
vector<m2::RectD> m_boundRects;
vector<dp::OverlayHandle::Rects> m_rects;
};
} // namespace df
|