Chromium Code Reviews| Index: cc/heads_up_display_layer_impl.h |
| diff --git a/cc/heads_up_display_layer_impl.h b/cc/heads_up_display_layer_impl.h |
| index 70bf03ec867e0da20a2435ab114b426aba737729..67b277981bf8558bef1f89a51f5d402c272af5bc 100644 |
| --- a/cc/heads_up_display_layer_impl.h |
| +++ b/cc/heads_up_display_layer_impl.h |
| @@ -21,6 +21,7 @@ namespace cc { |
| class DebugRectHistory; |
| class FontAtlas; |
| class FrameRateCounter; |
| +class PaintTimeCounter; |
| class CC_EXPORT HeadsUpDisplayLayerImpl : public LayerImpl { |
| public: |
| @@ -42,25 +43,47 @@ public: |
| virtual bool layerIsAlwaysDamaged() const OVERRIDE; |
| private: |
| + struct Graph { |
| + Graph(double indicatorValue, double startUpperBound); |
| + |
| + // Eases the upper bound, which limits what is currently visible in the graph, |
| + // so that the graph always scales to either it's max or defaultUpperBound. |
| + static double updateUpperBound(Graph*); |
|
egraether
2013/01/16 00:53:03
Renamed "high" to "upperBound".
|
| + |
| + double value; |
| + double min; |
| + double max; |
| + |
| + double currentUpperBound; |
| + const double defaultUpperBound; |
| + const double indicator; |
| + }; |
| + |
| HeadsUpDisplayLayerImpl(LayerTreeImpl* treeImpl, int id); |
| virtual const char* layerTypeAsString() const OVERRIDE; |
| void drawHudContents(SkCanvas*); |
| - int drawFPSCounter(SkCanvas*, FrameRateCounter*); |
| - void drawFPSCounterText(SkCanvas*, SkPaint&, FrameRateCounter*, SkRect); |
| - void drawFPSCounterGraphAndHistogram(SkCanvas* canvas, SkPaint& paint, FrameRateCounter* fpsCounter, SkRect graphBounds, SkRect histogramBounds); |
| + |
| + void drawTextLeftAligned(SkCanvas*, SkPaint*, const SkRect& bounds, const std::string& text); |
| + void drawTextRightAligned(SkCanvas*, SkPaint*, const SkRect& bounds, const std::string& text); |
| + |
| + void drawGraphBackground(SkCanvas*, SkPaint*, const SkRect& bounds); |
| + void drawGraphLines(SkCanvas*, SkPaint*, const SkRect& bounds, const Graph&); |
| + |
| + int drawFPSDisplay(SkCanvas*, FrameRateCounter*, const int& top); |
| + int drawPaintTimeDisplay(SkCanvas*, PaintTimeCounter*, const int& top); |
| + |
| void drawDebugRects(SkCanvas*, DebugRectHistory*); |
| scoped_ptr<FontAtlas> m_fontAtlas; |
| scoped_ptr<ScopedResource> m_hudTexture; |
| scoped_ptr<SkCanvas> m_hudCanvas; |
| - double m_averageFPS; |
| - double m_minFPS; |
| - double m_maxFPS; |
| + Graph m_fpsGraph; |
| + Graph m_paintTimeGraph; |
| - base::TimeTicks textUpdateTime; |
| + base::TimeTicks m_timeOfLastGraphUpdate; |
| }; |
| } // namespace cc |