1 // Copyright (c) 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 "base/profiler/alternate_timer.h" 6 7 namespace { 8 9 tracked_objects::NowFunction* g_time_function = nullptr; 10 tracked_objects::TimeSourceType g_time_source_type = 11 tracked_objects::TIME_SOURCE_TYPE_WALL_TIME; 12 13 } // anonymous namespace 14 15 namespace tracked_objects { 16 17 const char kAlternateProfilerTime[] = "CHROME_PROFILER_TIME"; 18 19 // Set an alternate timer function to replace the OS time function when 20 // profiling. SetAlternateTimeSource(NowFunction * now_function,TimeSourceType type)21void SetAlternateTimeSource(NowFunction* now_function, TimeSourceType type) { 22 g_time_function = now_function; 23 g_time_source_type = type; 24 } 25 GetAlternateTimeSource()26NowFunction* GetAlternateTimeSource() { 27 return g_time_function; 28 } 29 GetTimeSourceType()30TimeSourceType GetTimeSourceType() { 31 return g_time_source_type; 32 } 33 34 } // namespace tracked_objects 35