blob: c4e4a53cf9542057ac20b63740fbf5da1649773b [file] [log] [blame]
// Copyright 2015 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "base/trace_event/memory_dump_request_args.h"
#include "base/notreached.h"
namespace base::trace_event {
// static
const char* MemoryDumpTypeToString(const MemoryDumpType& dump_type) {
switch (dump_type) {
case MemoryDumpType::kPeriodicInterval:
return "periodic_interval";
case MemoryDumpType::kExplicitlyTriggered:
return "explicitly_triggered";
case MemoryDumpType::kSummaryOnly:
return "summary_only";
}
NOTREACHED();
}
MemoryDumpType StringToMemoryDumpType(const std::string& str) {
if (str == "periodic_interval") {
return MemoryDumpType::kPeriodicInterval;
}
if (str == "explicitly_triggered") {
return MemoryDumpType::kExplicitlyTriggered;
}
if (str == "summary_only") {
return MemoryDumpType::kSummaryOnly;
}
NOTREACHED();
}
const char* MemoryDumpLevelOfDetailToString(
const MemoryDumpLevelOfDetail& level_of_detail) {
switch (level_of_detail) {
case MemoryDumpLevelOfDetail::kBackground:
return "background";
case MemoryDumpLevelOfDetail::kLight:
return "light";
case MemoryDumpLevelOfDetail::kDetailed:
return "detailed";
}
NOTREACHED();
}
MemoryDumpLevelOfDetail StringToMemoryDumpLevelOfDetail(
const std::string& str) {
if (str == "background") {
return MemoryDumpLevelOfDetail::kBackground;
}
if (str == "light") {
return MemoryDumpLevelOfDetail::kLight;
}
if (str == "detailed") {
return MemoryDumpLevelOfDetail::kDetailed;
}
NOTREACHED();
}
} // namespace base::trace_event