[Media Router] Filter non-display MediaRoutes before sending them to the UI.
[chromium-blink-merge.git] / cc / output / overlay_strategy_sandwich.h
blobc5c05e546cb2743d1fb29f328c67ae10f78de433
1 // Copyright 2015 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.
5 #ifndef CC_OUTPUT_OVERLAY_STRATEGY_SANDWICH_H_
6 #define CC_OUTPUT_OVERLAY_STRATEGY_SANDWICH_H_
8 #include "cc/output/overlay_strategy_common.h"
10 namespace cc {
12 // The sandwich strategy looks for a video quad without regard to quads above
13 // it. The video is "overlaid" on top of the scene, and then the non-empty
14 // parts of the scene are "overlaid" on top of the video. This is only valid
15 // for overlay contents that are fully opaque.
16 class CC_EXPORT OverlayStrategySandwich : public OverlayStrategyCommonDelegate {
17 public:
18 OverlayStrategySandwich() {}
19 ~OverlayStrategySandwich() override;
21 bool TryOverlay(OverlayCandidateValidator* capability_checker,
22 RenderPassList* render_passes_in_draw_order,
23 OverlayCandidateList* candidate_list,
24 const OverlayCandidate& candidate,
25 QuadList::Iterator candidate_iterator,
26 float device_scale_factor) override;
28 private:
29 DISALLOW_COPY_AND_ASSIGN(OverlayStrategySandwich);
32 } // namespace cc
34 #endif // CC_OUTPUT_OVERLAY_STRATEGY_SANDWICH_H_