1 #pragma once 2 3 #include <exception> 4 5 namespace mbgl { 6 7 class RendererObserver { 8 public: 9 virtual ~RendererObserver() = default; 10 11 enum class RenderMode : uint32_t { 12 Partial, 13 Full 14 }; 15 16 // Signals that a repaint is required onInvalidate()17 virtual void onInvalidate() {} 18 19 // Resource failed to download / parse onResourceError(std::exception_ptr)20 virtual void onResourceError(std::exception_ptr) {} 21 22 // First frame onWillStartRenderingMap()23 virtual void onWillStartRenderingMap() {} 24 25 // Start of frame, initial is the first frame for this map onWillStartRenderingFrame()26 virtual void onWillStartRenderingFrame() {} 27 28 // End of frame, boolean flags that a repaint is required onDidFinishRenderingFrame(RenderMode,bool)29 virtual void onDidFinishRenderingFrame(RenderMode, bool) {} 30 31 // Final frame onDidFinishRenderingMap()32 virtual void onDidFinishRenderingMap() {} 33 }; 34 35 } // namespace mbgl 36