Commit 19e20f94 authored by aberent@chromium.org's avatar aberent@chromium.org

Move Android TraceEvent interface to base

The platform independent C++ code for TraceEvent has always been in base.
This CL moves the Android specific code into base to match.

This CL is needed now since trace is used by the Android library loader,
which is moving out of content.

Review URL: https://codereview.chromium.org/131553003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@244153 0039d316-1c4b-4281-b951-d872f2087c98
parent 1dff7963
......@@ -18,6 +18,7 @@
#include "base/android/path_utils.h"
#include "base/android/sys_utils.h"
#include "base/android/thread_utils.h"
#include "base/android/trace_event_binding.h"
#include "base/basictypes.h"
#include "base/debug/trace_event.h"
#include "base/message_loop/message_pump_android.h"
......@@ -50,6 +51,7 @@ static RegistrationMethod kBaseRegisteredMethods[] = {
{ "SysUtils", base::android::SysUtils::Register },
{ "PowerMonitor", base::RegisterPowerMonitor },
{ "ThreadUtils", base::RegisterThreadUtils },
{ "TraceEvent", base::android::RegisterTraceEvent },
};
bool RegisterJni(JNIEnv* env) {
......
......@@ -18,6 +18,9 @@ public abstract class BaseSwitches {
// Overrides low-end device detection, enabling low-end device optimizations.
public static final String ENABLE_LOW_END_DEVICE_MODE = "enable-low-end-device-mode";
// Adds additional thread idle time information into the trace event output.
public static final String ENABLE_IDLE_TRACING = "enable-idle-tracing";
// Prevent instantiation.
private BaseSwitches() {}
}
This diff is collapsed.
This diff is collapsed.
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Copyright 2014 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 "content/common/android/trace_event_binding.h"
#include "base/android/trace_event_binding.h"
#include <jni.h>
......@@ -12,6 +12,9 @@
#include "base/lazy_instance.h"
#include "jni/TraceEvent_jni.h"
namespace base {
namespace android {
namespace {
const char kJavaCategory[] = "Java";
......@@ -133,3 +136,6 @@ static void FinishAsync(JNIEnv* env, jclass clazz,
bool RegisterTraceEvent(JNIEnv* env) {
return RegisterNativesImpl(env);
}
} // namespace android
} // namespace base
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Copyright 2014 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.
#ifndef CONTENT_COMMON_ANDROID_TRACE_EVENT_H_
#define CONTENT_COMMON_ANDROID_TRACE_EVENT_H_
#ifndef BASE_ANDROID_TRACE_EVENT_H_
#define BASE_ANDROID_TRACE_EVENT_H_
#include <jni.h>
namespace base {
namespace android {
extern bool RegisterTraceEvent(JNIEnv* env);
} // namespace android
} // namespace base
#endif // CONTENT_COMMON_ANDROID_TRACE_EVENT_H_
......@@ -1234,6 +1234,7 @@
'android/java/src/org/chromium/base/SystemMessageHandler.java',
'android/java/src/org/chromium/base/SysUtils.java',
'android/java/src/org/chromium/base/ThreadUtils.java',
'android/java/src/org/chromium/base/TraceEvent.java',
],
'conditions': [
['google_tv==1', {
......
......@@ -72,6 +72,8 @@
'android/sys_utils.cc',
'android/sys_utils.h',
'android/thread_utils.h',
'android/trace_event_binding.cc',
'android/trace_event_binding.h',
'at_exit.cc',
'at_exit.h',
'atomic_ref_count.h',
......
......@@ -8,14 +8,12 @@
#include "base/android/jni_registrar.h"
#include "content/common/android/device_telephony_info.h"
#include "content/common/android/hash_set.h"
#include "content/common/android/trace_event_binding.h"
namespace {
base::android::RegistrationMethod kContentRegisteredMethods[] = {
{ "DeviceTelephonyInfo",
content::DeviceTelephonyInfo::RegisterDeviceTelephonyInfo },
{ "HashSet", content::RegisterHashSet },
{ "TraceEvent", RegisterTraceEvent },
};
} // namespace
......
......@@ -119,8 +119,6 @@
'common/android/hash_set.h',
'common/android/surface_texture_peer.cc',
'common/android/surface_texture_peer.h',
'common/android/trace_event_binding.cc',
'common/android/trace_event_binding.h',
'common/appcache_messages.h',
'common/browser_plugin/browser_plugin_constants.cc',
'common/browser_plugin/browser_plugin_constants.h',
......
......@@ -38,7 +38,6 @@
'public/android/java/src/org/chromium/content/browser/framehost/NavigationControllerImpl.java',
'public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java',
'public/android/java/src/org/chromium/content/common/DeviceTelephonyInfo.java',
'public/android/java/src/org/chromium/content/common/TraceEvent.java',
],
'variables': {
'jni_gen_package': 'content',
......
......@@ -9,9 +9,9 @@ import android.util.Log;
import org.chromium.base.CommandLine;
import org.chromium.base.JNINamespace;
import org.chromium.base.SysUtils;
import org.chromium.base.TraceEvent;
import org.chromium.content.common.ProcessInitException;
import org.chromium.content.common.ResultCodes;
import org.chromium.content.common.TraceEvent;
/**
* This class provides functionality to load and register the native libraries.
......
......@@ -15,12 +15,12 @@ import android.util.Log;
import org.chromium.base.CpuFeatures;
import org.chromium.base.ThreadUtils;
import org.chromium.base.TraceEvent;
import org.chromium.content.app.ChildProcessService;
import org.chromium.content.app.Linker;
import org.chromium.content.app.LinkerParams;
import org.chromium.content.common.IChildProcessCallback;
import org.chromium.content.common.IChildProcessService;
import org.chromium.content.common.TraceEvent;
import java.io.IOException;
......
......@@ -23,7 +23,7 @@ import android.widget.FrameLayout;
import com.google.common.annotations.VisibleForTesting;
import org.chromium.content.common.TraceEvent;
import org.chromium.base.TraceEvent;
import org.chromium.ui.base.WindowAndroid;
/**
......
......@@ -55,6 +55,7 @@ import com.google.common.annotations.VisibleForTesting;
import org.chromium.base.CalledByNative;
import org.chromium.base.CommandLine;
import org.chromium.base.JNINamespace;
import org.chromium.base.TraceEvent;
import org.chromium.base.WeakContext;
import org.chromium.content.R;
import org.chromium.content.browser.ContentViewGestureHandler.MotionEventDelegate;
......@@ -70,7 +71,6 @@ import org.chromium.content.browser.input.SelectPopupDialog;
import org.chromium.content.browser.input.SelectPopupItem;
import org.chromium.content.browser.input.SelectionHandleController;
import org.chromium.content.common.ContentSwitches;
import org.chromium.content.common.TraceEvent;
import org.chromium.ui.base.ViewAndroid;
import org.chromium.ui.base.ViewAndroidDelegate;
import org.chromium.ui.base.WindowAndroid;
......
......@@ -13,12 +13,12 @@ import android.view.MotionEvent;
import android.view.ViewConfiguration;
import org.chromium.base.CommandLine;
import org.chromium.base.TraceEvent;
import org.chromium.content.browser.LongPressDetector.LongPressDelegate;
import org.chromium.content.browser.third_party.GestureDetector;
import org.chromium.content.browser.third_party.GestureDetector.OnDoubleTapListener;
import org.chromium.content.browser.third_party.GestureDetector.OnGestureListener;
import org.chromium.content.common.ContentSwitches;
import org.chromium.content.common.TraceEvent;
import java.util.ArrayDeque;
import java.util.Deque;
......
......@@ -18,7 +18,7 @@ import android.widget.FrameLayout;
import org.chromium.base.CalledByNative;
import org.chromium.base.JNINamespace;
import org.chromium.content.common.TraceEvent;
import org.chromium.base.TraceEvent;
import org.chromium.ui.base.WindowAndroid;
/***
......
......@@ -15,8 +15,8 @@ import android.widget.Toast;
import org.chromium.base.CalledByNative;
import org.chromium.base.JNINamespace;
import org.chromium.base.TraceEvent;
import org.chromium.content.R;
import org.chromium.content.common.TraceEvent;
import java.io.File;
import java.text.SimpleDateFormat;
......
......@@ -10,7 +10,7 @@ import android.os.Handler;
import android.view.Choreographer;
import android.view.WindowManager;
import org.chromium.content.common.TraceEvent;
import org.chromium.base.TraceEvent;
/**
* Notifies clients of the default displays's vertical sync pulses.
......@@ -26,6 +26,9 @@ public class VSyncMonitor {
private static final long NANOSECONDS_PER_MICROSECOND = 1000;
public static final int MAX_AUTO_ONVSYNC_COUNT = 5;
/**
* VSync listener class
*/
public interface Listener {
/**
* Called very soon after the start of the display's vertical sync period.
......
......@@ -10,6 +10,7 @@ import android.os.Message;
import android.util.Log;
import org.chromium.base.ThreadUtils;
import org.chromium.base.TraceEvent;
import java.lang.ref.ReferenceQueue;
import java.lang.ref.WeakReference;
......
......@@ -18,9 +18,6 @@ public abstract class ContentSwitches {
// Enables test intent handling.
public static final String ENABLE_TEST_INTENTS = "enable-test-intents";
// Adds additional thread idle time information into the trace event output.
public static final String ENABLE_IDLE_TRACING = "enable-idle-tracing";
// Dump frames-per-second to the log
public static final String LOG_FPS = "log-fps";
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment