OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 24 matching lines...) Expand all Loading... |
35 #include "wtf/RefCounted.h" | 35 #include "wtf/RefCounted.h" |
36 #include "wtf/RefPtr.h" | 36 #include "wtf/RefPtr.h" |
37 #include "wtf/text/WTFString.h" | 37 #include "wtf/text/WTFString.h" |
38 | 38 |
39 #include <stdint.h> | 39 #include <stdint.h> |
40 | 40 |
41 // This will mark the trace event as disabled by default. The user will need | 41 // This will mark the trace event as disabled by default. The user will need |
42 // to explicitly enable the event. | 42 // to explicitly enable the event. |
43 #define TRACE_DISABLED_BY_DEFAULT(name) "disabled-by-default-" name | 43 #define TRACE_DISABLED_BY_DEFAULT(name) "disabled-by-default-" name |
44 | 44 |
45 namespace WebCore { | 45 namespace blink { |
46 | 46 |
47 namespace TraceEvent { | 47 namespace TraceEvent { |
48 typedef uint64_t TraceEventHandle; | 48 typedef uint64_t TraceEventHandle; |
49 | 49 |
50 class PLATFORM_EXPORT ConvertableToTraceFormat : public RefCounted<ConvertableTo
TraceFormat> { | 50 class PLATFORM_EXPORT ConvertableToTraceFormat : public RefCounted<ConvertableTo
TraceFormat> { |
51 public: | 51 public: |
52 virtual String asTraceFormat() const = 0; | 52 virtual String asTraceFormat() const = 0; |
53 virtual ~ConvertableToTraceFormat() { } | 53 virtual ~ConvertableToTraceFormat() { } |
54 }; | 54 }; |
55 | 55 |
56 } | 56 } |
57 | 57 |
58 // FIXME: Make these global variables thread-safe. Make a value update atomic. | 58 // FIXME: Make these global variables thread-safe. Make a value update atomic. |
59 PLATFORM_EXPORT extern long* traceSamplingState[3]; | 59 PLATFORM_EXPORT extern long* traceSamplingState[3]; |
60 | 60 |
61 class PLATFORM_EXPORT EventTracer { | 61 class PLATFORM_EXPORT EventTracer { |
62 public: | 62 public: |
63 static void initialize(); | 63 static void initialize(); |
64 static const unsigned char* getTraceCategoryEnabledFlag(const char*); | 64 static const unsigned char* getTraceCategoryEnabledFlag(const char*); |
65 static TraceEvent::TraceEventHandle addTraceEvent(char phase, | 65 static TraceEvent::TraceEventHandle addTraceEvent(char phase, |
66 const unsigned char* categoryEnabledFlag, | 66 const unsigned char* categoryEnabledFlag, |
67 const char* name, | 67 const char* name, |
68 unsigned long long id, | 68 unsigned long long id, |
69 int numArgs, | 69 int numArgs, |
70 const char* argNames[], | 70 const char* argNames[], |
71 const unsigned char argTypes[], | 71 const unsigned char argTypes[], |
72 const unsigned long long argValues[], | 72 const unsigned long long argValues[], |
73 WebCore::TraceEvent::ConvertableToTraceFormat*[], | 73 blink::TraceEvent::ConvertableToTraceFormat*[], |
74 unsigned char flags); | 74 unsigned char flags); |
75 static TraceEvent::TraceEventHandle addTraceEvent(char phase, | 75 static TraceEvent::TraceEventHandle addTraceEvent(char phase, |
76 const unsigned char* categoryEnabledFlag, | 76 const unsigned char* categoryEnabledFlag, |
77 const char* name, | 77 const char* name, |
78 unsigned long long id, | 78 unsigned long long id, |
79 int numArgs, | 79 int numArgs, |
80 const char* argNames[], | 80 const char* argNames[], |
81 const unsigned char argTypes[], | 81 const unsigned char argTypes[], |
82 const unsigned long long argValues[], | 82 const unsigned long long argValues[], |
83 unsigned char flags); | 83 unsigned char flags); |
84 static void updateTraceEventDuration(const unsigned char* categoryEnabledFla
g, const char* name, TraceEvent::TraceEventHandle); | 84 static void updateTraceEventDuration(const unsigned char* categoryEnabledFla
g, const char* name, TraceEvent::TraceEventHandle); |
85 }; | 85 }; |
86 | 86 |
87 } // namespace WebCore | 87 } // namespace blink |
88 | 88 |
89 #endif // EventTracer_h | 89 #endif // EventTracer_h |
OLD | NEW |