Home | History | Annotate | Download | only in output
      1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #ifndef CC_OUTPUT_COMPOSITOR_FRAME_METADATA_H_
      6 #define CC_OUTPUT_COMPOSITOR_FRAME_METADATA_H_
      7 
      8 #include "cc/base/cc_export.h"
      9 #include "ui/base/latency_info.h"
     10 #include "ui/gfx/size_f.h"
     11 #include "ui/gfx/vector2d_f.h"
     12 
     13 namespace cc {
     14 
     15 class CC_EXPORT CompositorFrameMetadata {
     16  public:
     17   CompositorFrameMetadata();
     18   ~CompositorFrameMetadata();
     19 
     20   // The device scale factor used to generate this compositor frame.
     21   float device_scale_factor;
     22 
     23   // Scroll offset and scale of the root layer. This can be used for tasks
     24   // like positioning windowed plugins.
     25   gfx::Vector2dF root_scroll_offset;
     26   float page_scale_factor;
     27 
     28   // These limits can be used together with the scroll/scale fields above to
     29   // determine if scrolling/scaling in a particular direction is possible.
     30   gfx::SizeF viewport_size;
     31   gfx::SizeF root_layer_size;
     32   float min_page_scale_factor;
     33   float max_page_scale_factor;
     34 
     35   // Used to position the Android location top bar and page content, whose
     36   // precise position is computed by the renderer compositor.
     37   gfx::Vector2dF location_bar_offset;
     38   gfx::Vector2dF location_bar_content_translation;
     39   float overdraw_bottom_height;
     40 
     41   ui::LatencyInfo latency_info;
     42 };
     43 
     44 }  // namespace cc
     45 
     46 #endif  // CC_OUTPUT_COMPOSITOR_FRAME_METADATA_H_
     47