1 // Copyright 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 #include "components/viz/common/resources/transferable_resource.h"
6 #include "components/viz/common/resources/returned_resource.h"
7 
8 namespace viz {
9 
10 TransferableResource::TransferableResource() = default;
11 TransferableResource::~TransferableResource() = default;
12 
13 TransferableResource::TransferableResource(const TransferableResource& other) =
14     default;
15 TransferableResource& TransferableResource::operator=(
16     const TransferableResource& other) = default;
17 
ToReturnedResource() const18 ReturnedResource TransferableResource::ToReturnedResource() const {
19   ReturnedResource returned;
20   returned.id = id;
21   returned.sync_token = mailbox_holder.sync_token;
22   returned.count = 1;
23   return returned;
24 }
25 
26 // static
ReturnResources(const std::vector<TransferableResource> & input)27 std::vector<ReturnedResource> TransferableResource::ReturnResources(
28     const std::vector<TransferableResource>& input) {
29   std::vector<ReturnedResource> out;
30   out.reserve(input.size());
31   for (const auto& r : input)
32     out.push_back(r.ToReturnedResource());
33   return out;
34 }
35 
36 }  // namespace viz
37