summaryrefslogtreecommitdiffstats
path: root/ppapi/c/dev/ppb_trace_event_dev.h
diff options
context:
space:
mode:
Diffstat (limited to 'ppapi/c/dev/ppb_trace_event_dev.h')
-rw-r--r--ppapi/c/dev/ppb_trace_event_dev.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/ppapi/c/dev/ppb_trace_event_dev.h b/ppapi/c/dev/ppb_trace_event_dev.h
new file mode 100644
index 0000000..153fca8
--- /dev/null
+++ b/ppapi/c/dev/ppb_trace_event_dev.h
@@ -0,0 +1,68 @@
+/* Copyright (c) 2012 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.
+ */
+
+/* From dev/ppb_trace_event_dev.idl modified Wed Jan 2 16:11:35 2013. */
+
+#ifndef PPAPI_C_DEV_PPB_TRACE_EVENT_DEV_H_
+#define PPAPI_C_DEV_PPB_TRACE_EVENT_DEV_H_
+
+#include "ppapi/c/pp_macros.h"
+#include "ppapi/c/pp_stdint.h"
+
+#define PPB_TRACE_EVENT_DEV_INTERFACE_0_1 "PPB_Trace_Event(Dev);0.1"
+#define PPB_TRACE_EVENT_DEV_INTERFACE PPB_TRACE_EVENT_DEV_INTERFACE_0_1
+
+/**
+ * @file
+ * This file defines the <code>PPB_Trace_Event</code> interface. It is meant
+ * to be used in plugins as the API that trace macros from trace_event.h use.
+ */
+
+
+/**
+ * @addtogroup Interfaces
+ * @{
+ */
+struct PPB_Trace_Event_Dev_0_1 {
+ /**
+ * Gets a pointer to a character for identifying a category name in the
+ * tracing system as well as for being able to early exit in client-side
+ * tracing code.
+ *
+ * NB: This mem_t return value should technically be const, but return values
+ * for Pepper IDL of mem_t type are not const. The same is true for the arg
+ * |category_enabled| for AddTraceEvent.
+ */
+ void* (*GetCategoryEnabled)(const char* category_name);
+ /**
+ * Adds a trace event to the platform tracing system. This function call is
+ * usually the result of a TRACE_* macro from trace_event.h when tracing and
+ * the category of the particular trace are enabled. It is not advisable to
+ * call this function on its own; it is really only meant to be used by the
+ * trace macros.
+ */
+ void (*AddTraceEvent)(int8_t phase,
+ const void* category_enabled,
+ const char* name,
+ uint64_t id,
+ uint32_t num_args,
+ const char* arg_names[],
+ const uint8_t arg_types[],
+ const uint64_t arg_values[],
+ uint8_t flags);
+ /**
+ * Sets the thread name of the calling thread in the tracing system so it will
+ * show up properly in chrome://tracing.
+ */
+ void (*SetThreadName)(const char* thread_name);
+};
+
+typedef struct PPB_Trace_Event_Dev_0_1 PPB_Trace_Event_Dev;
+/**
+ * @}
+ */
+
+#endif /* PPAPI_C_DEV_PPB_TRACE_EVENT_DEV_H_ */
+