summaryrefslogtreecommitdiffstats
path: root/cc/resources
diff options
context:
space:
mode:
authorvmpstr <vmpstr@chromium.org>2016-03-16 13:44:02 -0700
committerCommit bot <commit-bot@chromium.org>2016-03-16 20:46:15 +0000
commit4065174ac28746b10a832411426bd756d9c5979c (patch)
tree9ea7bf51f94a7b35b1921187fc8b93c48df9077e /cc/resources
parente886edbb2d3d7eade99d9542b56dfc9a7701248f (diff)
downloadchromium_src-4065174ac28746b10a832411426bd756d9c5979c.zip
chromium_src-4065174ac28746b10a832411426bd756d9c5979c.tar.gz
chromium_src-4065174ac28746b10a832411426bd756d9c5979c.tar.bz2
cc: Remove some unnecessary const scoped_refptr&.
This patch makes the API a bit clearer by taking a copy of scoped_refptr in some situations (where ownership is shared) and using a raw pointer in situations where ownership is not needed. The only references that remain are the ones captured in lambdas or Callbacks. R=danakj BUG=589044 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1803863003 Cr-Commit-Position: refs/heads/master@{#381524}
Diffstat (limited to 'cc/resources')
-rw-r--r--cc/resources/video_resource_updater.cc27
-rw-r--r--cc/resources/video_resource_updater.h9
2 files changed, 17 insertions, 19 deletions
diff --git a/cc/resources/video_resource_updater.cc b/cc/resources/video_resource_updater.cc
index 5615455..24d1a44 100644
--- a/cc/resources/video_resource_updater.cc
+++ b/cc/resources/video_resource_updater.cc
@@ -209,9 +209,9 @@ void VideoResourceUpdater::DeleteResource(ResourceList::iterator resource_it) {
all_resources_.erase(resource_it);
}
-VideoFrameExternalResources VideoResourceUpdater::
- CreateExternalResourcesFromVideoFrame(
- const scoped_refptr<media::VideoFrame>& video_frame) {
+VideoFrameExternalResources
+VideoResourceUpdater::CreateExternalResourcesFromVideoFrame(
+ scoped_refptr<media::VideoFrame> video_frame) {
#if defined(VIDEO_HOLE)
if (video_frame->storage_type() == media::VideoFrame::STORAGE_HOLE) {
VideoFrameExternalResources external_resources;
@@ -223,17 +223,16 @@ VideoFrameExternalResources VideoResourceUpdater::
return VideoFrameExternalResources();
DCHECK(video_frame->HasTextures() || video_frame->IsMappable());
if (video_frame->HasTextures())
- return CreateForHardwarePlanes(video_frame);
+ return CreateForHardwarePlanes(std::move(video_frame));
else
- return CreateForSoftwarePlanes(video_frame);
+ return CreateForSoftwarePlanes(std::move(video_frame));
}
// For frames that we receive in software format, determine the dimensions of
// each plane in the frame.
-static gfx::Size SoftwarePlaneDimension(
- const scoped_refptr<media::VideoFrame>& input_frame,
- bool software_compositor,
- size_t plane_index) {
+static gfx::Size SoftwarePlaneDimension(media::VideoFrame* input_frame,
+ bool software_compositor,
+ size_t plane_index) {
gfx::Size coded_size = input_frame->coded_size();
if (software_compositor)
return coded_size;
@@ -246,7 +245,7 @@ static gfx::Size SoftwarePlaneDimension(
}
VideoFrameExternalResources VideoResourceUpdater::CreateForSoftwarePlanes(
- const scoped_refptr<media::VideoFrame>& video_frame) {
+ scoped_refptr<media::VideoFrame> video_frame) {
TRACE_EVENT0("cc", "VideoResourceUpdater::CreateForSoftwarePlanes");
const media::VideoPixelFormat input_frame_format = video_frame->format();
@@ -319,7 +318,7 @@ VideoFrameExternalResources VideoResourceUpdater::CreateForSoftwarePlanes(
std::vector<ResourceList::iterator> plane_resources;
for (size_t i = 0; i < output_plane_count; ++i) {
gfx::Size output_plane_resource_size =
- SoftwarePlaneDimension(video_frame, software_compositor, i);
+ SoftwarePlaneDimension(video_frame.get(), software_compositor, i);
if (output_plane_resource_size.IsEmpty() ||
output_plane_resource_size.width() > max_resource_size ||
output_plane_resource_size.height() > max_resource_size) {
@@ -548,7 +547,7 @@ void VideoResourceUpdater::ReturnTexture(
// Create a copy of a texture-backed source video frame in a new GL_TEXTURE_2D
// texture.
void VideoResourceUpdater::CopyPlaneTexture(
- const scoped_refptr<media::VideoFrame>& video_frame,
+ media::VideoFrame* video_frame,
const gpu::MailboxHolder& mailbox_holder,
VideoFrameExternalResources* external_resources) {
gpu::gles2::GLES2Interface* gl = context_provider_->ContextGL();
@@ -618,7 +617,7 @@ void VideoResourceUpdater::CopyPlaneTexture(
}
VideoFrameExternalResources VideoResourceUpdater::CreateForHardwarePlanes(
- const scoped_refptr<media::VideoFrame>& video_frame) {
+ scoped_refptr<media::VideoFrame> video_frame) {
TRACE_EVENT0("cc", "VideoResourceUpdater::CreateForHardwarePlanes");
DCHECK(video_frame->HasTextures());
if (!context_provider_)
@@ -645,7 +644,7 @@ VideoFrameExternalResources VideoResourceUpdater::CreateForHardwarePlanes(
if (video_frame->metadata()->IsTrue(
media::VideoFrameMetadata::COPY_REQUIRED)) {
- CopyPlaneTexture(video_frame, mailbox_holder, &external_resources);
+ CopyPlaneTexture(video_frame.get(), mailbox_holder, &external_resources);
} else {
external_resources.mailboxes.push_back(TextureMailbox(
mailbox_holder.mailbox, mailbox_holder.sync_token,
diff --git a/cc/resources/video_resource_updater.h b/cc/resources/video_resource_updater.h
index 1307be9..d4eaae3 100644
--- a/cc/resources/video_resource_updater.h
+++ b/cc/resources/video_resource_updater.h
@@ -83,7 +83,7 @@ class CC_EXPORT VideoResourceUpdater
~VideoResourceUpdater();
VideoFrameExternalResources CreateExternalResourcesFromVideoFrame(
- const scoped_refptr<media::VideoFrame>& video_frame);
+ scoped_refptr<media::VideoFrame> video_frame);
private:
struct PlaneResource {
@@ -125,14 +125,13 @@ class CC_EXPORT VideoResourceUpdater
bool has_mailbox,
bool immutable_hint);
void DeleteResource(ResourceList::iterator resource_it);
- bool VerifyFrame(const scoped_refptr<media::VideoFrame>& video_frame);
- void CopyPlaneTexture(const scoped_refptr<media::VideoFrame>& video_frame,
+ void CopyPlaneTexture(media::VideoFrame* video_frame,
const gpu::MailboxHolder& mailbox_holder,
VideoFrameExternalResources* external_resources);
VideoFrameExternalResources CreateForHardwarePlanes(
- const scoped_refptr<media::VideoFrame>& video_frame);
+ scoped_refptr<media::VideoFrame> video_frame);
VideoFrameExternalResources CreateForSoftwarePlanes(
- const scoped_refptr<media::VideoFrame>& video_frame);
+ scoped_refptr<media::VideoFrame> video_frame);
static void RecycleResource(base::WeakPtr<VideoResourceUpdater> updater,
unsigned resource_id,