17 #ifndef _TBB_ITT_NOTIFY
18 #define _TBB_ITT_NOTIFY
30 #ifndef INTEL_ITTNOTIFY_API_PRIVATE
31 #define INTEL_ITTNOTIFY_API_PRIVATE
36 extern "C" void __itt_fini_ittlib(
void);
40 #undef __itt_event_create
41 #define __itt_event_create __itt_event_createA
48 #define ITT_CALLER_NULL ((__itt_caller)0)
53 #if (_WIN32||_WIN64) && !__MINGW32__
56 typedef wchar_t tchar;
58 #define _T(string_literal) L ## string_literal
62 #define _T(string_literal) string_literal
74 *SyncObj_SchedulerInitialization,
75 *SyncObj_SchedulersList,
76 *SyncObj_WorkerLifeCycleMgmt,
77 *SyncObj_TaskStealingLoop,
78 *SyncObj_WorkerTaskPool,
79 *SyncObj_MasterTaskPool,
80 *SyncObj_TaskPoolSpinning,
82 *SyncObj_TaskReturnList,
84 #if __TBB_PREVIEW_CRITICAL_TASKS
85 *SyncObj_CriticalTaskStream,
98 #define ITT_NOTIFY(name,obj) __itt_notify_##name(const_cast<void*>(static_cast<volatile void*>(obj)))
99 #define ITT_THREAD_SET_NAME(name) __itt_thread_set_name(name)
100 #define ITT_FINI_ITTLIB() __itt_fini_ittlib()
101 #define ITT_SYNC_CREATE(obj, type, name) __itt_sync_create((void*)(obj), type, name, 2)
102 #define ITT_SYNC_RENAME(obj, name) __itt_sync_rename(obj, name)
103 #define ITT_STACK_CREATE(obj) obj = __itt_stack_caller_create()
104 #if __TBB_TASK_GROUP_CONTEXT
105 #define ITT_STACK(precond, name, obj) (precond) ? __itt_stack_##name(obj) : ((void)0);
107 #define ITT_STACK(precond, name, obj) ((void)0)
110 #define ITT_TASK_GROUP(obj,name,parent) itt_make_task_group_v7(internal::ITT_DOMAIN_MAIN,(void*)(obj),ALGORITHM,(void*)(parent),(parent!=NULL) ? ALGORITHM : FLOW_NULL,name)
111 #define ITT_TASK_BEGIN(obj,name,id) itt_task_begin_v7(internal::ITT_DOMAIN_MAIN,(void*)(id),ALGORITHM,(void*)(obj),ALGORITHM,name)
112 #define ITT_TASK_END itt_task_end_v7(internal::ITT_DOMAIN_MAIN)
116 #define ITT_NOTIFY(name,obj) ((void)0)
117 #define ITT_THREAD_SET_NAME(name) ((void)0)
118 #define ITT_FINI_ITTLIB() ((void)0)
119 #define ITT_SYNC_CREATE(obj, type, name) ((void)0)
120 #define ITT_SYNC_RENAME(obj, name) ((void)0)
121 #define ITT_STACK_CREATE(obj) ((void)0)
122 #define ITT_STACK(precond, name, obj) ((void)0)
124 #define ITT_TASK_GROUP(type,name,parent) ((void)0)
125 #define ITT_TASK_BEGIN(type,name,id) ((void)0)
126 #define ITT_TASK_END ((void)0)