Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(386)

Side by Side Diff: base/trace_event/trace_event.h

Issue 1852433005: Convert //base to use std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase after r384946 Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « base/trace_event/trace_config_unittest.cc ('k') | base/trace_event/trace_event_android.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef BASE_TRACE_EVENT_TRACE_EVENT_H_ 5 #ifndef BASE_TRACE_EVENT_TRACE_EVENT_H_
6 #define BASE_TRACE_EVENT_TRACE_EVENT_H_ 6 #define BASE_TRACE_EVENT_TRACE_EVENT_H_
7 7
8 // This header file defines implementation details of how the trace macros in 8 // This header file defines implementation details of how the trace macros in
9 // trace_event_common.h collect and store trace events. Anything not 9 // trace_event_common.h collect and store trace events. Anything not
10 // implementation-specific should go in trace_event_common.h instead of here. 10 // implementation-specific should go in trace_event_common.h instead of here.
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
104 // base::trace_event::TraceEventHandle TRACE_EVENT_API_ADD_TRACE_EVENT( 104 // base::trace_event::TraceEventHandle TRACE_EVENT_API_ADD_TRACE_EVENT(
105 // char phase, 105 // char phase,
106 // const unsigned char* category_group_enabled, 106 // const unsigned char* category_group_enabled,
107 // const char* name, 107 // const char* name,
108 // const char* scope, 108 // const char* scope,
109 // unsigned long long id, 109 // unsigned long long id,
110 // int num_args, 110 // int num_args,
111 // const char** arg_names, 111 // const char** arg_names,
112 // const unsigned char* arg_types, 112 // const unsigned char* arg_types,
113 // const unsigned long long* arg_values, 113 // const unsigned long long* arg_values,
114 // scoped_ptr<ConvertableToTraceFormat>* 114 // std::unique_ptr<ConvertableToTraceFormat>*
115 // convertable_values, 115 // convertable_values,
116 // unsigned int flags) 116 // unsigned int flags)
117 #define TRACE_EVENT_API_ADD_TRACE_EVENT \ 117 #define TRACE_EVENT_API_ADD_TRACE_EVENT \
118 base::trace_event::TraceLog::GetInstance()->AddTraceEvent 118 base::trace_event::TraceLog::GetInstance()->AddTraceEvent
119 119
120 // Add a trace event to the platform tracing system. 120 // Add a trace event to the platform tracing system.
121 // base::trace_event::TraceEventHandle 121 // base::trace_event::TraceEventHandle
122 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_BIND_ID( 122 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_BIND_ID(
123 // char phase, 123 // char phase,
124 // const unsigned char* category_group_enabled, 124 // const unsigned char* category_group_enabled,
125 // const char* name, 125 // const char* name,
126 // const char* scope, 126 // const char* scope,
127 // unsigned long long id, 127 // unsigned long long id,
128 // unsigned long long bind_id, 128 // unsigned long long bind_id,
129 // int num_args, 129 // int num_args,
130 // const char** arg_names, 130 // const char** arg_names,
131 // const unsigned char* arg_types, 131 // const unsigned char* arg_types,
132 // const unsigned long long* arg_values, 132 // const unsigned long long* arg_values,
133 // scoped_ptr<ConvertableToTraceFormat>* 133 // std::unique_ptr<ConvertableToTraceFormat>*
134 // convertable_values, 134 // convertable_values,
135 // unsigned int flags) 135 // unsigned int flags)
136 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_BIND_ID \ 136 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_BIND_ID \
137 base::trace_event::TraceLog::GetInstance()->AddTraceEventWithBindId 137 base::trace_event::TraceLog::GetInstance()->AddTraceEventWithBindId
138 138
139 // Add a trace event to the platform tracing system overriding the pid. 139 // Add a trace event to the platform tracing system overriding the pid.
140 // The resulting event will have tid = pid == (process_id passed here). 140 // The resulting event will have tid = pid == (process_id passed here).
141 // base::trace_event::TraceEventHandle 141 // base::trace_event::TraceEventHandle
142 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_PROCESS_ID( 142 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_PROCESS_ID(
143 // char phase, 143 // char phase,
144 // const unsigned char* category_group_enabled, 144 // const unsigned char* category_group_enabled,
145 // const char* name, 145 // const char* name,
146 // const char* scope, 146 // const char* scope,
147 // unsigned long long id, 147 // unsigned long long id,
148 // int process_id, 148 // int process_id,
149 // int num_args, 149 // int num_args,
150 // const char** arg_names, 150 // const char** arg_names,
151 // const unsigned char* arg_types, 151 // const unsigned char* arg_types,
152 // const unsigned long long* arg_values, 152 // const unsigned long long* arg_values,
153 // scoped_ptr<ConvertableToTraceFormat>* 153 // std::unique_ptr<ConvertableToTraceFormat>*
154 // convertable_values, 154 // convertable_values,
155 // unsigned int flags) 155 // unsigned int flags)
156 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_PROCESS_ID \ 156 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_PROCESS_ID \
157 base::trace_event::TraceLog::GetInstance()->AddTraceEventWithProcessId 157 base::trace_event::TraceLog::GetInstance()->AddTraceEventWithProcessId
158 158
159 // Add a trace event to the platform tracing system. 159 // Add a trace event to the platform tracing system.
160 // base::trace_event::TraceEventHandle 160 // base::trace_event::TraceEventHandle
161 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_TIMESTAMP( 161 // TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_TIMESTAMP(
162 // char phase, 162 // char phase,
163 // const unsigned char* category_group_enabled, 163 // const unsigned char* category_group_enabled,
164 // const char* name, 164 // const char* name,
165 // const char* scope, 165 // const char* scope,
166 // unsigned long long id, 166 // unsigned long long id,
167 // int thread_id, 167 // int thread_id,
168 // const TimeTicks& timestamp, 168 // const TimeTicks& timestamp,
169 // int num_args, 169 // int num_args,
170 // const char** arg_names, 170 // const char** arg_names,
171 // const unsigned char* arg_types, 171 // const unsigned char* arg_types,
172 // const unsigned long long* arg_values, 172 // const unsigned long long* arg_values,
173 // scoped_ptr<ConvertableToTraceFormat>* 173 // std::unique_ptr<ConvertableToTraceFormat>*
174 // convertable_values, 174 // convertable_values,
175 // unsigned int flags) 175 // unsigned int flags)
176 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP \ 176 #define TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP \
177 base::trace_event::TraceLog::GetInstance() \ 177 base::trace_event::TraceLog::GetInstance() \
178 ->AddTraceEventWithThreadIdAndTimestamp 178 ->AddTraceEventWithThreadIdAndTimestamp
179 179
180 // Set the duration field of a COMPLETE trace event. 180 // Set the duration field of a COMPLETE trace event.
181 // void TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION( 181 // void TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION(
182 // const unsigned char* category_group_enabled, 182 // const unsigned char* category_group_enabled,
183 // const char* name, 183 // const char* name,
184 // base::trace_event::TraceEventHandle id) 184 // base::trace_event::TraceEventHandle id)
185 #define TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION \ 185 #define TRACE_EVENT_API_UPDATE_TRACE_EVENT_DURATION \
186 base::trace_event::TraceLog::GetInstance()->UpdateTraceEventDuration 186 base::trace_event::TraceLog::GetInstance()->UpdateTraceEventDuration
187 187
188 // Adds a metadata event to the trace log. The |AppendValueAsTraceFormat| method 188 // Adds a metadata event to the trace log. The |AppendValueAsTraceFormat| method
189 // on the convertable value will be called at flush time. 189 // on the convertable value will be called at flush time.
190 // TRACE_EVENT_API_ADD_METADATA_EVENT( 190 // TRACE_EVENT_API_ADD_METADATA_EVENT(
191 // const unsigned char* category_group_enabled, 191 // const unsigned char* category_group_enabled,
192 // const char* event_name, 192 // const char* event_name,
193 // const char* arg_name, 193 // const char* arg_name,
194 // scoped_ptr<ConvertableToTraceFormat> arg_value) 194 // std::unique_ptr<ConvertableToTraceFormat> arg_value)
195 #define TRACE_EVENT_API_ADD_METADATA_EVENT \ 195 #define TRACE_EVENT_API_ADD_METADATA_EVENT \
196 trace_event_internal::AddMetadataEvent 196 trace_event_internal::AddMetadataEvent
197 197
198 // Defines atomic operations used internally by the tracing system. 198 // Defines atomic operations used internally by the tracing system.
199 #define TRACE_EVENT_API_ATOMIC_WORD base::subtle::AtomicWord 199 #define TRACE_EVENT_API_ATOMIC_WORD base::subtle::AtomicWord
200 #define TRACE_EVENT_API_ATOMIC_LOAD(var) base::subtle::NoBarrier_Load(&(var)) 200 #define TRACE_EVENT_API_ATOMIC_LOAD(var) base::subtle::NoBarrier_Load(&(var))
201 #define TRACE_EVENT_API_ATOMIC_STORE(var, value) \ 201 #define TRACE_EVENT_API_ATOMIC_STORE(var, value) \
202 base::subtle::NoBarrier_Store(&(var), (value)) 202 base::subtle::NoBarrier_Store(&(var), (value))
203 203
204 // Defines visibility for classes in trace_event.h 204 // Defines visibility for classes in trace_event.h
(...skipping 417 matching lines...) Expand 10 before | Expand all | Expand 10 after
622 char phase, 622 char phase,
623 const unsigned char* category_group_enabled, 623 const unsigned char* category_group_enabled,
624 const char* name, 624 const char* name,
625 const char* scope, 625 const char* scope,
626 unsigned long long id, 626 unsigned long long id,
627 int thread_id, 627 int thread_id,
628 const base::TimeTicks& timestamp, 628 const base::TimeTicks& timestamp,
629 unsigned int flags, 629 unsigned int flags,
630 unsigned long long bind_id, 630 unsigned long long bind_id,
631 const char* arg1_name, 631 const char* arg1_name,
632 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val) { 632 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val) {
633 const int num_args = 1; 633 const int num_args = 1;
634 unsigned char arg_types[1] = { TRACE_VALUE_TYPE_CONVERTABLE }; 634 unsigned char arg_types[1] = { TRACE_VALUE_TYPE_CONVERTABLE };
635 scoped_ptr<base::trace_event::ConvertableToTraceFormat> 635 std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
636 convertable_values[1] = {std::move(arg1_val)}; 636 convertable_values[1] = {std::move(arg1_val)};
637 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP( 637 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP(
638 phase, category_group_enabled, name, scope, id, bind_id, thread_id, 638 phase, category_group_enabled, name, scope, id, bind_id, thread_id,
639 timestamp, num_args, &arg1_name, arg_types, NULL, convertable_values, 639 timestamp, num_args, &arg1_name, arg_types, NULL, convertable_values,
640 flags); 640 flags);
641 } 641 }
642 642
643 template <class ARG1_TYPE, class ARG2_CONVERTABLE_TYPE> 643 template <class ARG1_TYPE, class ARG2_CONVERTABLE_TYPE>
644 static inline base::trace_event::TraceEventHandle 644 static inline base::trace_event::TraceEventHandle
645 AddTraceEventWithThreadIdAndTimestamp( 645 AddTraceEventWithThreadIdAndTimestamp(
646 char phase, 646 char phase,
647 const unsigned char* category_group_enabled, 647 const unsigned char* category_group_enabled,
648 const char* name, 648 const char* name,
649 const char* scope, 649 const char* scope,
650 unsigned long long id, 650 unsigned long long id,
651 int thread_id, 651 int thread_id,
652 const base::TimeTicks& timestamp, 652 const base::TimeTicks& timestamp,
653 unsigned int flags, 653 unsigned int flags,
654 unsigned long long bind_id, 654 unsigned long long bind_id,
655 const char* arg1_name, 655 const char* arg1_name,
656 const ARG1_TYPE& arg1_val, 656 const ARG1_TYPE& arg1_val,
657 const char* arg2_name, 657 const char* arg2_name,
658 scoped_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) { 658 std::unique_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) {
659 const int num_args = 2; 659 const int num_args = 2;
660 const char* arg_names[2] = { arg1_name, arg2_name }; 660 const char* arg_names[2] = { arg1_name, arg2_name };
661 661
662 unsigned char arg_types[2]; 662 unsigned char arg_types[2];
663 unsigned long long arg_values[2]; 663 unsigned long long arg_values[2];
664 SetTraceValue(arg1_val, &arg_types[0], &arg_values[0]); 664 SetTraceValue(arg1_val, &arg_types[0], &arg_values[0]);
665 arg_types[1] = TRACE_VALUE_TYPE_CONVERTABLE; 665 arg_types[1] = TRACE_VALUE_TYPE_CONVERTABLE;
666 scoped_ptr<base::trace_event::ConvertableToTraceFormat> 666 std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
667 convertable_values[2] = {nullptr, std::move(arg2_val)}; 667 convertable_values[2] = {nullptr, std::move(arg2_val)};
668 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP( 668 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP(
669 phase, category_group_enabled, name, scope, id, bind_id, thread_id, 669 phase, category_group_enabled, name, scope, id, bind_id, thread_id,
670 timestamp, num_args, arg_names, arg_types, arg_values, convertable_values, 670 timestamp, num_args, arg_names, arg_types, arg_values, convertable_values,
671 flags); 671 flags);
672 } 672 }
673 673
674 template <class ARG1_CONVERTABLE_TYPE, class ARG2_TYPE> 674 template <class ARG1_CONVERTABLE_TYPE, class ARG2_TYPE>
675 static inline base::trace_event::TraceEventHandle 675 static inline base::trace_event::TraceEventHandle
676 AddTraceEventWithThreadIdAndTimestamp( 676 AddTraceEventWithThreadIdAndTimestamp(
677 char phase, 677 char phase,
678 const unsigned char* category_group_enabled, 678 const unsigned char* category_group_enabled,
679 const char* name, 679 const char* name,
680 const char* scope, 680 const char* scope,
681 unsigned long long id, 681 unsigned long long id,
682 int thread_id, 682 int thread_id,
683 const base::TimeTicks& timestamp, 683 const base::TimeTicks& timestamp,
684 unsigned int flags, 684 unsigned int flags,
685 unsigned long long bind_id, 685 unsigned long long bind_id,
686 const char* arg1_name, 686 const char* arg1_name,
687 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val, 687 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val,
688 const char* arg2_name, 688 const char* arg2_name,
689 const ARG2_TYPE& arg2_val) { 689 const ARG2_TYPE& arg2_val) {
690 const int num_args = 2; 690 const int num_args = 2;
691 const char* arg_names[2] = { arg1_name, arg2_name }; 691 const char* arg_names[2] = { arg1_name, arg2_name };
692 692
693 unsigned char arg_types[2]; 693 unsigned char arg_types[2];
694 unsigned long long arg_values[2]; 694 unsigned long long arg_values[2];
695 arg_types[0] = TRACE_VALUE_TYPE_CONVERTABLE; 695 arg_types[0] = TRACE_VALUE_TYPE_CONVERTABLE;
696 arg_values[0] = 0; 696 arg_values[0] = 0;
697 SetTraceValue(arg2_val, &arg_types[1], &arg_values[1]); 697 SetTraceValue(arg2_val, &arg_types[1], &arg_values[1]);
698 scoped_ptr<base::trace_event::ConvertableToTraceFormat> 698 std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
699 convertable_values[2] = {std::move(arg1_val), nullptr}; 699 convertable_values[2] = {std::move(arg1_val), nullptr};
700 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP( 700 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP(
701 phase, category_group_enabled, name, scope, id, bind_id, thread_id, 701 phase, category_group_enabled, name, scope, id, bind_id, thread_id,
702 timestamp, num_args, arg_names, arg_types, arg_values, convertable_values, 702 timestamp, num_args, arg_names, arg_types, arg_values, convertable_values,
703 flags); 703 flags);
704 } 704 }
705 705
706 template <class ARG1_CONVERTABLE_TYPE, class ARG2_CONVERTABLE_TYPE> 706 template <class ARG1_CONVERTABLE_TYPE, class ARG2_CONVERTABLE_TYPE>
707 static inline base::trace_event::TraceEventHandle 707 static inline base::trace_event::TraceEventHandle
708 AddTraceEventWithThreadIdAndTimestamp( 708 AddTraceEventWithThreadIdAndTimestamp(
709 char phase, 709 char phase,
710 const unsigned char* category_group_enabled, 710 const unsigned char* category_group_enabled,
711 const char* name, 711 const char* name,
712 const char* scope, 712 const char* scope,
713 unsigned long long id, 713 unsigned long long id,
714 int thread_id, 714 int thread_id,
715 const base::TimeTicks& timestamp, 715 const base::TimeTicks& timestamp,
716 unsigned int flags, 716 unsigned int flags,
717 unsigned long long bind_id, 717 unsigned long long bind_id,
718 const char* arg1_name, 718 const char* arg1_name,
719 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val, 719 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val,
720 const char* arg2_name, 720 const char* arg2_name,
721 scoped_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) { 721 std::unique_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) {
722 const int num_args = 2; 722 const int num_args = 2;
723 const char* arg_names[2] = { arg1_name, arg2_name }; 723 const char* arg_names[2] = { arg1_name, arg2_name };
724 unsigned char arg_types[2] = 724 unsigned char arg_types[2] =
725 { TRACE_VALUE_TYPE_CONVERTABLE, TRACE_VALUE_TYPE_CONVERTABLE }; 725 { TRACE_VALUE_TYPE_CONVERTABLE, TRACE_VALUE_TYPE_CONVERTABLE };
726 scoped_ptr<base::trace_event::ConvertableToTraceFormat> 726 std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
727 convertable_values[2] = {std::move(arg1_val), std::move(arg2_val)}; 727 convertable_values[2] = {std::move(arg1_val), std::move(arg2_val)};
728 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP( 728 return TRACE_EVENT_API_ADD_TRACE_EVENT_WITH_THREAD_ID_AND_TIMESTAMP(
729 phase, category_group_enabled, name, scope, id, bind_id, thread_id, 729 phase, category_group_enabled, name, scope, id, bind_id, thread_id,
730 timestamp, num_args, arg_names, arg_types, NULL, convertable_values, 730 timestamp, num_args, arg_names, arg_types, NULL, convertable_values,
731 flags); 731 flags);
732 } 732 }
733 733
734 static inline base::trace_event::TraceEventHandle 734 static inline base::trace_event::TraceEventHandle
735 AddTraceEventWithThreadIdAndTimestamp( 735 AddTraceEventWithThreadIdAndTimestamp(
736 char phase, 736 char phase,
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
806 template <class ARG1_CONVERTABLE_TYPE> 806 template <class ARG1_CONVERTABLE_TYPE>
807 static inline base::trace_event::TraceEventHandle AddTraceEvent( 807 static inline base::trace_event::TraceEventHandle AddTraceEvent(
808 char phase, 808 char phase,
809 const unsigned char* category_group_enabled, 809 const unsigned char* category_group_enabled,
810 const char* name, 810 const char* name,
811 const char* scope, 811 const char* scope,
812 unsigned long long id, 812 unsigned long long id,
813 unsigned int flags, 813 unsigned int flags,
814 unsigned long long bind_id, 814 unsigned long long bind_id,
815 const char* arg1_name, 815 const char* arg1_name,
816 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val) { 816 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val) {
817 int thread_id = static_cast<int>(base::PlatformThread::CurrentId()); 817 int thread_id = static_cast<int>(base::PlatformThread::CurrentId());
818 base::TimeTicks now = base::TimeTicks::Now(); 818 base::TimeTicks now = base::TimeTicks::Now();
819 return AddTraceEventWithThreadIdAndTimestamp( 819 return AddTraceEventWithThreadIdAndTimestamp(
820 phase, category_group_enabled, name, scope, id, thread_id, now, flags, 820 phase, category_group_enabled, name, scope, id, thread_id, now, flags,
821 bind_id, arg1_name, std::move(arg1_val)); 821 bind_id, arg1_name, std::move(arg1_val));
822 } 822 }
823 823
824 template<class ARG1_TYPE, class ARG2_TYPE> 824 template<class ARG1_TYPE, class ARG2_TYPE>
825 static inline base::trace_event::TraceEventHandle 825 static inline base::trace_event::TraceEventHandle
826 AddTraceEventWithThreadIdAndTimestamp( 826 AddTraceEventWithThreadIdAndTimestamp(
(...skipping 24 matching lines...) Expand all
851 template <class ARG1_CONVERTABLE_TYPE, class ARG2_TYPE> 851 template <class ARG1_CONVERTABLE_TYPE, class ARG2_TYPE>
852 static inline base::trace_event::TraceEventHandle AddTraceEvent( 852 static inline base::trace_event::TraceEventHandle AddTraceEvent(
853 char phase, 853 char phase,
854 const unsigned char* category_group_enabled, 854 const unsigned char* category_group_enabled,
855 const char* name, 855 const char* name,
856 const char* scope, 856 const char* scope,
857 unsigned long long id, 857 unsigned long long id,
858 unsigned int flags, 858 unsigned int flags,
859 unsigned long long bind_id, 859 unsigned long long bind_id,
860 const char* arg1_name, 860 const char* arg1_name,
861 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val, 861 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val,
862 const char* arg2_name, 862 const char* arg2_name,
863 const ARG2_TYPE& arg2_val) { 863 const ARG2_TYPE& arg2_val) {
864 int thread_id = static_cast<int>(base::PlatformThread::CurrentId()); 864 int thread_id = static_cast<int>(base::PlatformThread::CurrentId());
865 base::TimeTicks now = base::TimeTicks::Now(); 865 base::TimeTicks now = base::TimeTicks::Now();
866 return AddTraceEventWithThreadIdAndTimestamp( 866 return AddTraceEventWithThreadIdAndTimestamp(
867 phase, category_group_enabled, name, scope, id, thread_id, now, flags, 867 phase, category_group_enabled, name, scope, id, thread_id, now, flags,
868 bind_id, arg1_name, std::move(arg1_val), arg2_name, arg2_val); 868 bind_id, arg1_name, std::move(arg1_val), arg2_name, arg2_val);
869 } 869 }
870 870
871 template <class ARG1_TYPE, class ARG2_CONVERTABLE_TYPE> 871 template <class ARG1_TYPE, class ARG2_CONVERTABLE_TYPE>
872 static inline base::trace_event::TraceEventHandle AddTraceEvent( 872 static inline base::trace_event::TraceEventHandle AddTraceEvent(
873 char phase, 873 char phase,
874 const unsigned char* category_group_enabled, 874 const unsigned char* category_group_enabled,
875 const char* name, 875 const char* name,
876 const char* scope, 876 const char* scope,
877 unsigned long long id, 877 unsigned long long id,
878 unsigned int flags, 878 unsigned int flags,
879 unsigned long long bind_id, 879 unsigned long long bind_id,
880 const char* arg1_name, 880 const char* arg1_name,
881 const ARG1_TYPE& arg1_val, 881 const ARG1_TYPE& arg1_val,
882 const char* arg2_name, 882 const char* arg2_name,
883 scoped_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) { 883 std::unique_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) {
884 int thread_id = static_cast<int>(base::PlatformThread::CurrentId()); 884 int thread_id = static_cast<int>(base::PlatformThread::CurrentId());
885 base::TimeTicks now = base::TimeTicks::Now(); 885 base::TimeTicks now = base::TimeTicks::Now();
886 return AddTraceEventWithThreadIdAndTimestamp( 886 return AddTraceEventWithThreadIdAndTimestamp(
887 phase, category_group_enabled, name, scope, id, thread_id, now, flags, 887 phase, category_group_enabled, name, scope, id, thread_id, now, flags,
888 bind_id, arg1_name, arg1_val, arg2_name, std::move(arg2_val)); 888 bind_id, arg1_name, arg1_val, arg2_name, std::move(arg2_val));
889 } 889 }
890 890
891 template <class ARG1_CONVERTABLE_TYPE, class ARG2_CONVERTABLE_TYPE> 891 template <class ARG1_CONVERTABLE_TYPE, class ARG2_CONVERTABLE_TYPE>
892 static inline base::trace_event::TraceEventHandle AddTraceEvent( 892 static inline base::trace_event::TraceEventHandle AddTraceEvent(
893 char phase, 893 char phase,
894 const unsigned char* category_group_enabled, 894 const unsigned char* category_group_enabled,
895 const char* name, 895 const char* name,
896 const char* scope, 896 const char* scope,
897 unsigned long long id, 897 unsigned long long id,
898 unsigned int flags, 898 unsigned int flags,
899 unsigned long long bind_id, 899 unsigned long long bind_id,
900 const char* arg1_name, 900 const char* arg1_name,
901 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg1_val, 901 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg1_val,
902 const char* arg2_name, 902 const char* arg2_name,
903 scoped_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) { 903 std::unique_ptr<ARG2_CONVERTABLE_TYPE> arg2_val) {
904 int thread_id = static_cast<int>(base::PlatformThread::CurrentId()); 904 int thread_id = static_cast<int>(base::PlatformThread::CurrentId());
905 base::TimeTicks now = base::TimeTicks::Now(); 905 base::TimeTicks now = base::TimeTicks::Now();
906 return AddTraceEventWithThreadIdAndTimestamp( 906 return AddTraceEventWithThreadIdAndTimestamp(
907 phase, category_group_enabled, name, scope, id, thread_id, now, flags, 907 phase, category_group_enabled, name, scope, id, thread_id, now, flags,
908 bind_id, arg1_name, std::move(arg1_val), arg2_name, std::move(arg2_val)); 908 bind_id, arg1_name, std::move(arg1_val), arg2_name, std::move(arg2_val));
909 } 909 }
910 910
911 template<class ARG1_TYPE, class ARG2_TYPE> 911 template<class ARG1_TYPE, class ARG2_TYPE>
912 static inline base::trace_event::TraceEventHandle AddTraceEvent( 912 static inline base::trace_event::TraceEventHandle AddTraceEvent(
913 char phase, 913 char phase,
(...skipping 12 matching lines...) Expand all
926 return AddTraceEventWithThreadIdAndTimestamp( 926 return AddTraceEventWithThreadIdAndTimestamp(
927 phase, category_group_enabled, name, scope, id, thread_id, now, flags, 927 phase, category_group_enabled, name, scope, id, thread_id, now, flags,
928 bind_id, arg1_name, arg1_val, arg2_name, arg2_val); 928 bind_id, arg1_name, arg1_val, arg2_name, arg2_val);
929 } 929 }
930 930
931 template <class ARG1_CONVERTABLE_TYPE> 931 template <class ARG1_CONVERTABLE_TYPE>
932 static inline void AddMetadataEvent( 932 static inline void AddMetadataEvent(
933 const unsigned char* category_group_enabled, 933 const unsigned char* category_group_enabled,
934 const char* event_name, 934 const char* event_name,
935 const char* arg_name, 935 const char* arg_name,
936 scoped_ptr<ARG1_CONVERTABLE_TYPE> arg_value) { 936 std::unique_ptr<ARG1_CONVERTABLE_TYPE> arg_value) {
937 const char* arg_names[1] = {arg_name}; 937 const char* arg_names[1] = {arg_name};
938 unsigned char arg_types[1] = {TRACE_VALUE_TYPE_CONVERTABLE}; 938 unsigned char arg_types[1] = {TRACE_VALUE_TYPE_CONVERTABLE};
939 scoped_ptr<base::trace_event::ConvertableToTraceFormat> 939 std::unique_ptr<base::trace_event::ConvertableToTraceFormat>
940 convertable_values[1] = {std::move(arg_value)}; 940 convertable_values[1] = {std::move(arg_value)};
941 base::trace_event::TraceLog::GetInstance()->AddMetadataEvent( 941 base::trace_event::TraceLog::GetInstance()->AddMetadataEvent(
942 category_group_enabled, event_name, 942 category_group_enabled, event_name,
943 1, // num_args 943 1, // num_args
944 arg_names, arg_types, 944 arg_names, arg_types,
945 nullptr, // arg_values 945 nullptr, // arg_values
946 convertable_values, TRACE_EVENT_FLAG_NONE); 946 convertable_values, TRACE_EVENT_FLAG_NONE);
947 } 947 }
948 948
949 template <class ARG1_TYPE> 949 template <class ARG1_TYPE>
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after
1103 const char* name_; 1103 const char* name_;
1104 IDType id_; 1104 IDType id_;
1105 1105
1106 DISALLOW_COPY_AND_ASSIGN(TraceScopedTrackableObject); 1106 DISALLOW_COPY_AND_ASSIGN(TraceScopedTrackableObject);
1107 }; 1107 };
1108 1108
1109 } // namespace trace_event 1109 } // namespace trace_event
1110 } // namespace base 1110 } // namespace base
1111 1111
1112 #endif // BASE_TRACE_EVENT_TRACE_EVENT_H_ 1112 #endif // BASE_TRACE_EVENT_TRACE_EVENT_H_
OLDNEW
« no previous file with comments | « base/trace_event/trace_config_unittest.cc ('k') | base/trace_event/trace_event_android.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698