summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2015-06-11 02:08:20 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-06-11 02:08:20 +0000
commit58996069ae6613b54840943709517d0e4eec7a8f (patch)
treed9c0b2ec9619292aba71fd9bf7bbc93ded1ffeaf /include
parentce5af4b234ed6f5d6c39d47426d4e961bf3c2858 (diff)
parent8a4222a647bd17c991959eca17a50ba911c3ab6b (diff)
downloadframeworks_native-58996069ae6613b54840943709517d0e4eec7a8f.zip
frameworks_native-58996069ae6613b54840943709517d0e4eec7a8f.tar.gz
frameworks_native-58996069ae6613b54840943709517d0e4eec7a8f.tar.bz2
am 8a4222a6: Merge "Add tracing header" into mnc-dev
* commit '8a4222a647bd17c991959eca17a50ba911c3ab6b': Add tracing header
Diffstat (limited to 'include')
-rw-r--r--include/android/trace.h55
1 files changed, 55 insertions, 0 deletions
diff --git a/include/android/trace.h b/include/android/trace.h
new file mode 100644
index 0000000..e42e334
--- /dev/null
+++ b/include/android/trace.h
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2015 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+#ifndef ANDROID_NATIVE_TRACE_H
+#define ANDROID_NATIVE_TRACE_H
+
+#include <stdbool.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * Returns true if tracing is enabled. Use this signal to avoid expensive computation only necessary
+ * when tracing is enabled.
+ */
+bool ATrace_isEnabled();
+
+/**
+ * Writes a tracing message to indicate that the given section of code has begun. This call must be
+ * followed by a corresponding call to endSection() on the same thread.
+ *
+ * Note: At this time the vertical bar character '|' and newline character '\n' are used internally
+ * by the tracing mechanism. If sectionName contains these characters they will be replaced with a
+ * space character in the trace.
+ */
+void ATrace_beginSection(const char* sectionName);
+
+/**
+ * Writes a tracing message to indicate that a given section of code has ended. This call must be
+ * preceeded by a corresponding call to beginSection(char*) on the same thread. Calling this method
+ * will mark the end of the most recently begun section of code, so care must be taken to ensure
+ * that beginSection / endSection pairs are properly nested and called from the same thread.
+ */
+void ATrace_endSection();
+
+#ifdef __cplusplus
+};
+#endif
+
+#endif // ANDROID_NATIVE_TRACE_H