// Copyright 2015 The Chromium Authors. All rights reserved. // 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/logging.h" namespace base { namespace trace_event { // static const char* MemoryDumpTypeToString(const MemoryDumpType& dump_type) { switch (dump_type) { case MemoryDumpType::PERIODIC_INTERVAL: return "periodic_interval"; case MemoryDumpType::EXPLICITLY_TRIGGERED: return "explicitly_triggered"; case MemoryDumpType::PEAK_MEMORY_USAGE: return "peak_memory_usage"; case MemoryDumpType::SUMMARY_ONLY: return "summary_only"; } NOTREACHED(); return "unknown"; } MemoryDumpType StringToMemoryDumpType(const std::string& str) { if (str == "periodic_interval") return MemoryDumpType::PERIODIC_INTERVAL; if (str == "explicitly_triggered") return MemoryDumpType::EXPLICITLY_TRIGGERED; if (str == "peak_memory_usage") return MemoryDumpType::PEAK_MEMORY_USAGE; if (str == "summary_only") return MemoryDumpType::SUMMARY_ONLY; NOTREACHED(); return MemoryDumpType::LAST; } const char* MemoryDumpLevelOfDetailToString( const MemoryDumpLevelOfDetail& level_of_detail) { switch (level_of_detail) { case MemoryDumpLevelOfDetail::BACKGROUND: return "background"; case MemoryDumpLevelOfDetail::LIGHT: return "light"; case MemoryDumpLevelOfDetail::DETAILED: return "detailed"; } NOTREACHED(); return "unknown"; } MemoryDumpLevelOfDetail StringToMemoryDumpLevelOfDetail( const std::string& str) { if (str == "background") return MemoryDumpLevelOfDetail::BACKGROUND; if (str == "light") return MemoryDumpLevelOfDetail::LIGHT; if (str == "detailed") return MemoryDumpLevelOfDetail::DETAILED; NOTREACHED(); return MemoryDumpLevelOfDetail::LAST; } } // namespace trace_event } // namespace base