blob: 5f48fddb836c8d9a529a25f1a2caca15333e3b88 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "ui/ozone/platform/dri/overlay_plane.h"
#include "base/logging.h"
#include "ui/ozone/platform/dri/scanout_buffer.h"
namespace ui {
OverlayPlane::OverlayPlane(scoped_refptr<ScanoutBuffer> buffer)
: buffer(buffer),
z_order(0),
display_bounds(gfx::Point(), buffer->GetSize()),
crop_rect(0, 0, 1, 1),
overlay_plane(0) {
}
OverlayPlane::OverlayPlane(scoped_refptr<ScanoutBuffer> buffer,
int z_order,
gfx::OverlayTransform plane_transform,
const gfx::Rect& display_bounds,
const gfx::RectF& crop_rect)
: buffer(buffer),
z_order(z_order),
plane_transform(plane_transform),
display_bounds(display_bounds),
crop_rect(crop_rect),
overlay_plane(0) {
}
OverlayPlane::~OverlayPlane() {
}
// static
const OverlayPlane& OverlayPlane::GetPrimaryPlane(
const OverlayPlaneList& overlays) {
for (size_t i = 0; i < overlays.size(); ++i) {
if (overlays[i].z_order == 0)
return overlays[i];
}
NOTREACHED();
return overlays[0];
}
} // namespace ui