itrace
Instrumented Trace
itrace_multipass.h
Go to the documentation of this file.
1 
12 #ifndef ITRACE_MULTIPASS_H
13 #define ITRACE_MULTIPASS_H
14 
103 #define ITRACE_MULTI_PASS_START_LOOP(logger_handle, profiler_handle) \
104  char itracemp_root_filename[64]; \
105  itrace_get_root_filename(logger_handle, itracemp_root_filename); \
106  int itracemp_file_index=0; \
107  while(1) { /* event loop */ \
108  int num_events_left_to_register=0; \
109  itrace_get_num_events_left_to_register(profiler_handle, &num_events_left_to_register); \
110  if (num_events_left_to_register==0) { \
111  break; \
112  } \
113  char itracemp_root_filename_loop[64]; \
114  snprintf(itracemp_root_filename_loop,64,"%s_%d",itracemp_root_filename,itracemp_file_index++); \
115  itrace_set_root_filename(logger_handle, itracemp_root_filename_loop); \
116  printf("Processing new set into root filename %s. %d events and set separators left to process.\n", itracemp_root_filename_loop, num_events_left_to_register);
117 
123 #define ITRACE_MULTI_PASS_END_LOOP(logger_handle, profiler_handle) \
124  itrace_flush_logs(logger_handle); \
125  } \
126 itrace_set_root_filename(logger_handle, itracemp_root_filename); \
127 itrace_merge_csv_files(itracemp_root_filename,itracemp_file_index);
128 
134 #endif