#pragma once #include #include #include #include #include #include #include class QMapboxGLScheduler : public QObject, public mbgl::Scheduler { Q_OBJECT public: QMapboxGLScheduler(); virtual ~QMapboxGLScheduler(); // mbgl::Scheduler implementation. void schedule(std::weak_ptr scheduled) final; void processEvents(); signals: void needsProcessing(); private: MBGL_STORE_THREAD(tid); std::mutex m_taskQueueMutex; std::queue> m_taskQueue; };