cc: Add gfx::BufferFormat to cc::ResourceProvider::Resource.

cc::ResourceProvider::Resource::format corresponds to the format as seen
from the compositor and/or GL.

This format might not be the same as the actual buffer format that was
used to create the resource.
For example, a YUV buffer can be used to create a texture/resource with
RGBX internalformat.

The actual format of the buffer is needed to determine if configurations
of quads/resources can be used as overlays. So far we always assumed
the format for overlay candidates was RGBA.

This CL adds a cc::ResourceProvider::Resource::buffer_format that
is the format of the buffer used to create the resource.

Exo code has been changed accordingly to add set the appropriate format.

This CL just adds all the plumbing necessary to bring BufferFormat
all the way to OverlayCandidate, but doesn't change any logic when
creating overlay candidates.

BUG=695296
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel

Review-Url: https://codereview.chromium.org/2748903002
Cr-Commit-Position: refs/heads/master@{#456573}
11 files changed