1 // Copyright 2015 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.
5 #include "base/trace_event/process_memory_totals.h"
7 #include "base/format_macros.h"
8 #include "base/strings/stringprintf.h"
9 #include "base/trace_event/trace_event_argument.h"
12 namespace trace_event
{
14 ProcessMemoryTotals::ProcessMemoryTotals()
15 : resident_set_bytes_(0),
16 peak_resident_set_bytes_(0),
17 is_peak_rss_resetable_(false) {
20 void ProcessMemoryTotals::AsValueInto(TracedValue
* value
) const {
21 value
->SetString("resident_set_bytes",
22 StringPrintf("%" PRIx64
, resident_set_bytes_
));
23 if (peak_resident_set_bytes_
> 0) {
24 value
->SetString("peak_resident_set_bytes",
25 StringPrintf("%" PRIx64
, peak_resident_set_bytes_
));
26 value
->SetBoolean("is_peak_rss_resetable", is_peak_rss_resetable_
);
30 void ProcessMemoryTotals::Clear() {
31 resident_set_bytes_
= 0;
34 } // namespace trace_event