68 void loadAttributes()
override;
71 void setOpacity(
float opacity);
72 void stopPipeline()
override;
75 void draw(Matrix4f perspectiveMatrix, Matrix4f viewingMatrix,
float zNear,
float zFar,
bool mode2D);
77 std::unordered_map<std::string, uint> mTexturesToRender;
78 std::unordered_map<uint, std::shared_ptr<ImagePyramid>> mImageUsed;
79 std::unordered_map<std::string, uint> mVAO;
80 std::unordered_map<std::string, uint> mVBO;
81 std::unordered_map<std::string, uint> mEBO;
84 std::list<std::string> m_tileQueue;
86 std::unique_ptr<std::thread> m_bufferThread;
88 std::condition_variable m_queueEmptyCondition;
89 std::mutex m_tileQueueMutex;
91 std::unordered_set<std::string> m_loaded;
93 int m_currentLevel = -1;
97 std::shared_ptr<ImagePyramid> m_input;
100 bool mFillAreaModified;
102 std::unordered_map<int, Color> mLabelColors;
103 std::unordered_map<int, bool> mLabelFillArea;
105 int mBorderRadius = 1;
106 float mOpacity = 0.5;
107 cl::Buffer mColorBuffer, mFillAreaBuffer;
108 std::atomic<uint64_t> m_memoryUsage;
109 std::mutex m_texturesToRenderMutex;
111 void drawTextures(Matrix4f &perspectiveMatrix, Matrix4f &viewingMatrix,
bool mode2D);