Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(42)

Side by Side Diff: services/memory_instrumentation/public/cpp/memory_instrumentation_traits.cc

Issue 2693063002: Renamed /services/memory_infrastructure to /services/resource_coordinator (Closed)
Patch Set: Review fix Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2017 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 "services/memory_instrumentation/public/cpp/memory_instrumentation_trai ts.h"
6
7 #include "base/trace_event/memory_dump_request_args.h"
8 #include "services/memory_instrumentation/public/interfaces/memory_instrumentati on.mojom.h"
9
10 namespace mojo {
11
12 //static
13 memory_instrumentation::mojom::DumpType
14 EnumTraits<memory_instrumentation::mojom::DumpType,
15 base::trace_event::MemoryDumpType>::ToMojom(
16 base::trace_event::MemoryDumpType type) {
17 switch (type) {
18 case base::trace_event::MemoryDumpType::PERIODIC_INTERVAL:
19 return memory_instrumentation::mojom::DumpType::PERIODIC_INTERVAL;
20 case base::trace_event::MemoryDumpType::EXPLICITLY_TRIGGERED:
21 return memory_instrumentation::mojom::DumpType::EXPLICITLY_TRIGGERED;
22 case base::trace_event::MemoryDumpType::PEAK_MEMORY_USAGE:
23 return memory_instrumentation::mojom::DumpType::PEAK_MEMORY_USAGE;
24 default:
25 CHECK(false) << "Invalid type: " << static_cast<uint8_t>(type);
26 // This should not be reached. Just return a random value.
27 return memory_instrumentation::mojom::DumpType::PEAK_MEMORY_USAGE;
28 }
29 }
30
31 //static
32 bool EnumTraits<memory_instrumentation::mojom::DumpType,
33 base::trace_event::MemoryDumpType>::FromMojom(
34 memory_instrumentation::mojom::DumpType input,
35 base::trace_event::MemoryDumpType* out) {
36 switch (input) {
37 case memory_instrumentation::mojom::DumpType::PERIODIC_INTERVAL:
38 *out = base::trace_event::MemoryDumpType::PERIODIC_INTERVAL;
39 break;
40 case memory_instrumentation::mojom::DumpType::EXPLICITLY_TRIGGERED:
41 *out = base::trace_event::MemoryDumpType::EXPLICITLY_TRIGGERED;
42 break;
43 case memory_instrumentation::mojom::DumpType::PEAK_MEMORY_USAGE:
44 *out = base::trace_event::MemoryDumpType::PEAK_MEMORY_USAGE;
45 break;
46 default:
47 NOTREACHED() << "Invalid type: " << static_cast<uint8_t>(input);
48 return false;
49 }
50 return true;
51 }
52
53 //static
54 memory_instrumentation::mojom::LevelOfDetail
55 EnumTraits<memory_instrumentation::mojom::LevelOfDetail,
56 base::trace_event::MemoryDumpLevelOfDetail>::ToMojom(
57 base::trace_event::MemoryDumpLevelOfDetail level_of_detail) {
58 switch (level_of_detail) {
59 case base::trace_event::MemoryDumpLevelOfDetail::BACKGROUND:
60 return memory_instrumentation::mojom::LevelOfDetail::BACKGROUND;
61 case base::trace_event::MemoryDumpLevelOfDetail::LIGHT:
62 return memory_instrumentation::mojom::LevelOfDetail::LIGHT;
63 case base::trace_event::MemoryDumpLevelOfDetail::DETAILED:
64 return memory_instrumentation::mojom::LevelOfDetail::DETAILED;
65 default:
66 CHECK(false) << "Invalid type: " << static_cast<uint8_t>(level_of_detail);
67 // This should not be reached. Just return a random value.
68 return memory_instrumentation::mojom::LevelOfDetail::BACKGROUND;
69 }
70 }
71
72 //static
73 bool EnumTraits<memory_instrumentation::mojom::LevelOfDetail,
74 base::trace_event::MemoryDumpLevelOfDetail>::FromMojom(
75 memory_instrumentation::mojom::LevelOfDetail input,
76 base::trace_event::MemoryDumpLevelOfDetail* out) {
77 switch (input) {
78 case memory_instrumentation::mojom::LevelOfDetail::BACKGROUND:
79 *out = base::trace_event::MemoryDumpLevelOfDetail::BACKGROUND;
80 break;
81 case memory_instrumentation::mojom::LevelOfDetail::LIGHT:
82 *out = base::trace_event::MemoryDumpLevelOfDetail::LIGHT;
83 break;
84 case memory_instrumentation::mojom::LevelOfDetail::DETAILED:
85 *out = base::trace_event::MemoryDumpLevelOfDetail::DETAILED;
86 break;
87 default:
88 NOTREACHED() << "Invalid type: " << static_cast<uint8_t>(input);
89 return false;
90 }
91 return true;
92 }
93
94 //static
95 bool StructTraits<memory_instrumentation::mojom::RequestArgsDataView,
96 base::trace_event::MemoryDumpRequestArgs>::Read(
97 memory_instrumentation::mojom::RequestArgsDataView input,
98 base::trace_event::MemoryDumpRequestArgs* out) {
99 out->dump_guid = input.dump_guid();
100 if (!input.ReadDumpType(&out->dump_type))
101 return false;
102 if (!input.ReadLevelOfDetail(&out->level_of_detail))
103 return false;
104 return true;
105 }
106
107 } // namespace mojo
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698